Algorithm/문제풀이

[백준] 10250번: ACM 호텔

manzoo 2019. 5. 18. 14:47

문제링크 https://www.acmicpc.net/problem/10250

 

문제풀이

방은 엘리베이터에서 가까운 101 - 201 - 301 - 401호.. 의 순서로 배정된다.

따라서 배정되는 방 번호는 아래와 같은 규칙으로 계산할 수 있다.

입력받은 호텔의 층 수로 나눠서 계산이 가능하다.

 

단, 30과 같이 6으로 나눠떨어지는 수들은 나머지가 0이 되므로 저대로 계산하게 되면 0층, 6호가 나온다.

나눠떨어지는 경우에 대해서만 예외처리를 해주면 된다.

 

 

소스코드

/*
 * 백준 10250번: ACM 호텔
 */

#include <iostream>

using namespace std;

int main() {
	int T;
	cin >> T;

	cout.fill('0');

	while (T--) {
		int H, W, N;
		cin >> H >> W >> N;

		int floor = N % H == 0 ? H : N % H;
		cout << floor;

		int number = N % H == 0 ? N / H : N / H + 1;
		cout.width(2);
		cout << number << endl;
	}

	return 0;
}