https://www.acmicpc.net/problem/10250
10250번: ACM 호텔
프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수
www.acmicpc.net
코드
#include <stdio.h>
int main(void) {
int T;
int X, Y;
scanf("%d", &T);
for (int k = 0; k < T; k++) {
int H = 0, W = 0, N = 0;
scanf("%d %d %d", &H, &W, &N);
Y = N % H;
X = N / H + 1;
if (Y == 0) {
Y = H;
X--;
}
printf("%d%02d\n", Y, X);
}
return 0;
}
Y = N % H 이고, X = N / H + 1 인 것을 이용하여 구한 문제입니다.
여기서 주의할 점은 Y가 0일 경우입니다.
만약 주어진 입력이 5 5 5 일 때에, 출력은 501이 나와야 하지만, Y가 0인 경우를 없앤다면 다른 값이 나올 것입니다. 나누어 떨어졌을 때에 꼭대기 층에 있을테고 이전 호수에 있을테니 그 점을 실수하지 않도록 유의하셔야 합니다.
후기
예전에 이 문제를 풀때 배열을 막 배워서 배열을 이용하려고 했습니다. 결과는 실패였죠.. ㅋㅋ. 지금보니까 간단한 수학 문제였네요. 문제에서 주어진 이미지는 문제 해석에 있어서 이해하는 역할만 한다는 것을 명심해야 겠습니다. ㅎㅎ
'코딩테스트' 카테고리의 다른 글
[Python] 백준 2980번 - '도로와 신호등' 풀이 (2) | 2023.01.16 |
---|---|
[Python] 백준 1780번 - '종이의 개수' 풀이 (1) | 2023.01.15 |
[C] 백준 2884번 - '알람 시계' 풀이 (0) | 2023.01.14 |
[C] 백준 2525번 - '오븐 시계' 풀이 (0) | 2023.01.13 |
[C] 백준 1459번 - '걷기' 풀이 (0) | 2023.01.13 |