예를 들면, 만약 전체 5층일 때, 20번째 온 손님은 20/5 == 4번째 호수! 즉 4바퀴를 돌고 온 호수이다. 그런데, 몫이 0일 때 1호실이니까 +1을 해줘야한다.
손님이 머물 층 수는 N을 전체 층수로 나눈 나머지이다.
예를 들면, 만약 전체 6층일 때, 20번째 손님은 20%6 == 2번째층! 6층 한바퀴,6층 두바퀴, 6층 세바퀴 째 2번째 층! 그림으로 봐보면
다시 예를 들어보자. 만약 전체 6층일 때, 12번째 손님은 12%6==0? 0번째 층..? 예외가 있다! 만약 나머지가 0일 때 생각해보면 그 층의 마지막 층인 것이다.(위 그림을 참고) 그러므로 floor는 0이 아닌, 6번째 층, 즉 H가 되겠다. 그럼 호수는? 이미 12//6 + 1 로 계산해줬지만, 예외의 경우, 다음으로 넘어가지않으므로 -1을 다시 해줘야한다.
if floor == 0:
floor = H
ho -= 1
전체 코드
T = int(input())
for t in range(T):
H, W, N = map(int,input().split()) # 전체층수, 전체 호수, 방문 순서
floor = N % H # 손님이 사용할 층수
ho = N // H +1 # 몫이 0일 때 1호실이니까 +1을 해줘야함
# 예외 - 높이가 딱 맞아 떨어질 때
if floor == 0:
ho -= 1
floor = H # 0이 아닌 가장 꼭대기층!
print(floor*100+ho)