#문제
#작성 코드
#include <iostream>
#include <stdio.h>
using namespace std;
int T; // 테스트 케이스 개수
int H, W, N; // 층 수, 방 수, 손님no
int roomNo; // N번째 손님 배정받을 방
int main()
{
// 테스트케이스 개수 입력
scanf("%d", &T);
while(T--){
// 층 수, 방 수, 손님 번호 입력
scanf("%d %d %d", &H, &W, &N);
roomNo = 0;
int height, width;
/* 30 50 30의 경우 3001호가 아닌
102호에 묵는 문제를 해결하기 위해*/
if( N%H == 0 ){
height = H;
width = N/H;
}
else{
height = N%H;
width = N/H+1;
}
roomNo += height*100+width;
// N번째 손님에게 배정될 방 번호 출력
cout<<roomNo<<'\n';
}
return 0;
}
##
처음에 roomNo = (N%H)*100 + N/H+1; 으로 했을때 30 50 30의 케이스에서 3001호가 아닌 102호에 묵는 문제가 발생해서
N%H == 0 의 경우를 따로 처리해주었다.
'BOJ' 카테고리의 다른 글
BOJ 4948번 :: Chebyshev's Theorem(베르트랑 공준) (0) | 2019.11.19 |
---|---|
BOJ 1929번 :: 소수 구하기 (0) | 2019.11.18 |
BOJ 2581번 :: 소수 (0) | 2019.11.18 |
BOJ 1978번 :: 소수 찾기 (0) | 2019.11.17 |
BOJ 2775번 :: 부녀회장이 될테야 (0) | 2019.11.17 |