알고리즘 공부
Baekjoon | Q.10250 - ACM 호텔
치킨닮은닭
2019. 12. 26. 23:20
10250번: ACM 호텔
문제 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단순화하기 위해서 호텔은 직사각형 모양이라고 가정하자. 각 층에 W 개의 방이 있는 H 층 건물이라고 가정
www.acmicpc.net
호텔에 방문하는 투숙객 순서대로 거리가 짧은 객실부터 배정하여 방문 투숙객이 몇번째 방문객인지 입력하면 알맞은 객실 호수가 나오는 프로그램을 설계하는 문제이다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int tc = sc.nextInt();
String yy = "";
String xx = "";
for (int i = 0; i < tc; i++) {
int h = sc.nextInt();
int w = sc.nextInt();
int client = sc.nextInt();
if(client % h == 0) {
yy = h + "";
xx = client / h + "";
}else {
yy = client % h + "";
xx = client / h + 1 + "";
}
if(xx.length() == 1) {
xx = "0" + xx;
}
System.out.println(yy + xx);
}
}
}
높이(h)에 따른 거리는 고려사항이 아니고 폭(w)에 따른 거리만 고려하므로 높이의 몫과 나머지만 이용하여 객실 호수(yyxx)를 구하면 된다. 마지막에 xx의 경우 한 자리수라면 앞에 0을 붙여 표기해야 하므로 if문을 이용하여 처리해주었다.