https://www.acmicpc.net/problem/1491
문제에서 정의하는 시작 좌표 "가장 남서쪽" 이 (N-1,0)이 아닌 (0,0)임에 주의
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
class Main {
public static void main(String[] args) throws IOException {
int[] dr = {0, -1, 0, 1};
int[] dc = {1, 0, -1, 0};
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int M = Integer.parseInt(st.nextToken());
int N = Integer.parseInt(st.nextToken());
int r = 0;
int c = 0;
int d = 0;
boolean[][] vst = new boolean[N][M];
vst[r][c] = true;
boolean end = false;
while (!end) {
for (int i = 0; i < 4; i++) {
int tr = r + dr[d];
int tc = c + dc[d];
if (tr >= 0 && tr < N && tc >= 0 && tc < M && !vst[tr][tc]) {
vst[tr][tc] = true;
r = tr;
c = tc;
break;
} else {
d = ++d < 4 ? d : 0;
if (i == 3) {
end = true;
}
}
}
}
System.out.println(c + " " + r);
}
}
'[백준] PS > Java [실랜디]' 카테고리의 다른 글
[백준 1674] 성준이와 초콜릿 - JAV (0) | 2025.02.19 |
---|---|
[백준 1680] 쓰레기 수거 - JAVA (0) | 2025.02.18 |
[백준 1455] 뒤집기 II - JAVA (0) | 2025.02.18 |
[백준 1384] 메세지 - JAVA (0) | 2025.02.18 |
[백준 1431] 시리얼 번호 - JAVA (0) | 2025.02.18 |