본문 바로가기

알고리즘/백준

[백준/10250/Java]ACM호텔

[백준/10250/Java]ACM호텔

풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int intr = Integer.parseInt(br.readLine());
		
		for (int i = 0; i < intr; i++) {
			String[] arr = br.readLine().split(" ");
			int H = Integer.parseInt(arr[0]); // 호텔의 층 수
			int W = Integer.parseInt(arr[1]); // 각 층의 방 수(쓰지 않는다)
			int N = Integer.parseInt(arr[2]); // 몇 번째 손님
			
			int floor = 0;
			int room = 1;
			
			if(N % H == 0) {
				floor = H * 100;
				room = N / H;
			}
			else {
				floor = (N % H) * 100;
				room += (N / H);
			}
			System.out.println(floor + room);
		}
	}
}

후기

몇층인지는 (몇번째 손님 % 호텔의 층 수)의 결과로 알 수 있습니다.

몇번째 방인지는 (몇번째 손님 / 호텔의 층 수)의 결과로 알 수 있습니다.

각 층의 방 수는 처음에 입력값으로 받지만 쓰지 않아도 됩니다.

 

주의할점은 호텔의 층수와 방문객 순번이 똑같을 경우에 나머지 연산 처리를 하면 0이 되어버리기 때문에

해당 경우에는 호텔의 층수를 그대로 넣어줍니다.

728x90
반응형

'알고리즘 > 백준' 카테고리의 다른 글

[백준/2581/Java]소수  (0) 2022.05.04
[백준/1978/Java]소수찾기  (0) 2022.05.03
[백준/1065/Java]한수  (0) 2022.04.30
[백준/2869/Java]달팽이는 올라가고 싶다  (0) 2022.04.24
[백준/1712/Java]손익분기점  (0) 2022.04.21