백준 10250 ACM호텔 JAVA

sundays·2022년 9월 6일
0

문제

ACM 호텔

풀이

틀린 코드

int h = sc.nextInt(); // 세로
int w = sc.nextInt(); // 가로
int guest = sc.nextInt(); // 손님
int current = 0;
for (int j = 1; j <= w; j++) {
	for (int e = 1; e <= h; e++) {
		if (current == guest - 1) {
			System.out.println(e * 100 + j);
			break;
		}
		current++;
	}
	if (current == guest - 1)
		break;
}

내가 간과한 점은 다음과 같다
1. 2중 for 문이라 탈출 시점이 잘못됬다.
2. 이 탈출 시점은 가장 안쪽에 있는 if 문 안에서만 해결되어야 했다.

그리고 난 또 다른 사람과 너무 풀이가 다르기 때문에 또 포스팅 한다.
보통 다른 풀이들은 나눗셈 이용하신다. 근데 나는 왜이렇게 나눗셈 쓰는거 어색한거지
나 자신에게도 의문인게 제발 나눗셈 좀 써보지않을래....?

public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);
	int t = sc.nextInt();
	for (int i = 0; i < t; i++) {
		int h = sc.nextInt(); // 세로
		int w = sc.nextInt(); // 가로
		int guest = sc.nextInt(); // 손님
		int current = 0;
		int answer = 0;
		for (int j = 1; j <= w; j++) {
			if (answer == 0) {
				for (int e = 1; e <= h; e++) {
					if (current == guest - 1) {
						answer = e * 100 + j;
						break;
					}
					current++;
				}
			}
		}
		System.out.println(answer);
	}
}

전체 코드

전체 코드

profile
develop life

0개의 댓글