[기본수학1] ACM 호텔

2021. 2. 23. 22:11백준

 

10250번: ACM 호텔

프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수

www.acmicpc.net

엘레베이터를 기준으로 각 층의 1호부터 사람이 차는 이상한...? 호텔이기 때문에 사실 너비인 W 값은 아예 필요가 없다.

 

입력값도 < 99 까지로 정의되어 있기 때문에...

 

 

 

제출코드

from sys import stdin
import math

test_count = int(stdin.readline())
test_case = []

for i in range(0, test_count):
    append_case = list(map(int, stdin.readline().split(" ")))
    test_case.append(append_case)


def getRoomNumber(room_data):
    h = room_data[0]
    w = room_data[1]
    n = room_data[2]
    # n을 h로 나눈 나머지값이 층수고, 몫이 호수다
    
    room_num = 1

    # 한 열을 넘어가지 않는 경우엔 그냥 층수가 n층 호수는 1호
    if h >= n:
        floor = n
        print(str(floor) + str('{0:02d}'.format(room_num)))

    #  한 열을 가득 채워서 다음 열로 넘어간 경우
    else:
        # 층 수는 나머지가 된다. 나눈 몫은 방 번호가 된다.
        floor = n % h
        if floor == 0:
            if h == 1:
                floor = 1
            else:
                floor = h

        room_num = math.ceil(n / h)

        print(str(floor) + str('{0:02d}'.format(room_num)))


for j in range(0, len(test_case)):
    getRoomNumber(test_case[j])