반응형
풀이
- 따로 Stack이나 Deque를 사용하지 않아도 될 것 같은 문제라서
- 간단하게 해결했음
- 이유는, 어차피 한 사람이 지목할 수 있는 건 한 사람이기에
- 굳이 배열을 만들 필요가 없다고 판단
- 이후 다른 코드는 따로 풀이하지 않아도 간단하게 해결할 수 있기에 풀이는 생략!
import java.io.*;
import java.util.Arrays;
public class _17204 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int[] NK = Arrays.stream(br.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();
int[] li = new int[NK[0]];
boolean[] visit = new boolean[NK[0]];
int result = -1;
int cnt = 0;
for (int i=0; i<NK[0]; i++) li[i] = Integer.parseInt(br.readLine());
int now = 0;
while (true) {
if (visit[now]) break;
else {
visit[now] = true;
now = li[now];
cnt++;
if (now==NK[1]) {
result = cnt;
break;
}
}
}
System.out.println(result);
}
}
'알고리즘' 카테고리의 다른 글
[백준, 자바, 11728번] 배열 합치기 (0) | 2024.10.12 |
---|---|
[백준, 자바, 10825번] 국영수 (2차원 배열 정렬 문제) (0) | 2024.10.11 |
[백준, 자바, 1388번] 바닥 장식 (1) | 2024.10.11 |
[백준, 자바, 7562번] 나이트의 이동 (0) | 2024.10.10 |
[백준, 자바, 16173번] 점프왕 쩰리 (Small) (0) | 2024.10.10 |