[백준] ACM호텔_10250번

손시연·2022년 4월 5일
0

algorithm

목록 보기
4/18

ACM호텔_10250번

코드

t = int(input())
for _ in range(t):
    h, w, n = map(int, input().split())
    if n % h == 0:
        if n//h >= 10:
            print(str(h) + str(n//h))
        else:
            print(str(h) + "0" + str(n//h))
    else:
        if n//h+1 >= 10:
            print(str(n % h) + str(n//h+1))
        else:
            print(str(n % h) + "0" + str(n//h+1))

풀이노트

코드 작성은 어렵지 않으나, 반례 찾기가 어려움
h가 호텔의 층 수, w가 각 층의 호텔 방 수이지만, 세는 방식이 101 201 301 401식임
따라서 실제 2차 배열을 떠올릴 때는 h가 방, w가 층이라 생각하면 편함

  • 반례

input : 1 11 11
output : 111

input : 1 21 11
output : 111

input : 2 20 22
output : 211

  • 각 층의 끝방을 사용하는 경우 n%h 값이 0이 됨 -> 첫번째 if else 문

  • 층에 방이 10개 이상 있는 경우 -> 내부 if else 문
    예를 들어 111호는 1층 11번째 방임. 1011호는 10층 11번째 방임


소요시간 : 45분

profile
Server Engineer

0개의 댓글