문제
https://www.acmicpc.net/problem/10250
10250번: ACM 호텔
프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수
www.acmicpc.net
주요 아이디어
배열 선언할 필요도 없이 간단한 수식으로 해결 가능하다..
층 = N % H
방번호 = int(N/H) + 1
단, N이 H의 배수인 경우 층이 0으로 오류 발생한다.
따라서 N이 H의 배수인 경우
층 = H
방번호 = int(N/H)
로 예외처리 해주어야 함
- 파이썬 정수 한줄에 입력받기 - 계속 까먹어 ㅠㅠ
H,W,N = map(int, input().split())
코드 구현 (Python 3)
더보기
T = int(input())
for i in range(T):
H,W,N = map(int, input().split())
floor = N % H
room_num = int(N / H) + 1
if N%H==0:
floor = H
room_num = int(N/H)
print(floor * 100 + room_num)
제출 결과
코드 개선 방안
- 초반에 N이 H의 배수인 경우 오류가 발생하는 경우를 발견하지 못했다.. 좀 더 꼼꼼히 살펴보도록 하자
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 10845. 큐 (0) | 2022.09.07 |
---|---|
[BOJ] 10828. 스택 (0) | 2022.09.07 |
[BOJ] 10816. 숫자카드 2 (0) | 2022.09.07 |
[BOJ] 10814. 나이순 정렬 (0) | 2022.09.07 |
[BOJ] 09012. 괄호 (0) | 2022.09.07 |