#문제

 

#작성 코드

#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

+ Recent posts