[백준/자바/JAVA] 2845 : 파티가 끝나고 난 뒤

Seongkeun·2021년 7월 31일
1

BOJ

목록 보기
2/12
post-thumbnail

오랜만에 두뇌 회전을 요구하는 공부하니 머리가 너무 안 돌아간다... 언젠간 적응 되겠지 하는 마음으로 꿎꿎이 해보려 한다. 하지만 이 문제는 쉬운 문제이다보니 금방 풀렸다.


BOJ 2845 - 파티가 끝나고 난 뒤

[문제]

파티가 끝나고 나면, 사람들은 누가 파티에 왔는지와 얼마나 많은 사람들이 왔는지를 궁금해한다. 보통 파티는 매우 크게 열리기 때문에, 정확하게 몇 명이 참가했는지 알 수가 없다.

지난주 토요일에 상근이는 자신의 3학년 진학을 기념하면서 매우 성대한 파티를 열었다. 그리고, 상근이는 1m2당 몇 명의 사람이 있었는지 알고있다.

상근이의 파티는 정말 엄청난 규모였기 때문에, 대부분의 신문에도 기사가 실렸다. 상근이는 서로 다른 5개의 신문을 보면서 그 기사에 적혀져있는 참가자의 수를 적었다.

상근이는 자신이 알고있는 참가자의 수가 정확하다고 생각한다. 각 신문 기사에 실려있는 참가자의 수가 몇 명 만큼 잘못되어있는지 구하는 프로그램을 작성하시오.

{ 입 출력 예제 }


[문제풀이]

1m21m^{2} 당 사람 수 LL 과 파티가 열린 곳의 넓이 PP 를 곱해주면 총 면적의 참가자 수를 구할 수 있다.

각 기사 axa_{x}(L×P)(L\times P) 를 빼주면 된다.

axLPa_{x} - LP


[코드작성]

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;

public class Main {
	private static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); 
	public static void main(String args[]) throws IOException { 
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
		StringTokenizer st1 = new StringTokenizer(br.readLine());
		//1m2 당 사람의 수
		int L = Integer.parseInt(st1.nextToken());
		// 1m2 당 사람의 수 * 파티가 열렸던 곳의 넓이
		int P = L * Integer.parseInt(st1.nextToken());
		StringTokenizer st2 = new StringTokenizer(br.readLine());
		while(st2.hasMoreTokens()) {
			int a = Integer.parseInt(st2.nextToken());
			bw.write(String.valueOf(a-P)+" ");
			bw.flush();
		}
		bw.close();
	}
}

profile
지혜는 지식에서 비롯된다

0개의 댓글