틀린 코드
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);
}
}