Tags
- ์๋ฎฌ๋ ์ด์
- Java
- SpringBoot
- stack
- ์ํ
- ๋๋น ์ฐ์ ํ์
- Python
- ์ ์๋ก
- queue
- Brute Force Algorithm
- PGM
- ์ ๋ ฌ
- ๊ตฌํ
- LV2
- ๊น์ด ์ฐ์ ํ์
- CodingTest
- ๊ต์ฌ
- ๊ทธ๋ํ ์ด๋ก
- BOJ
- ์๋ฃ๊ตฌ์กฐ
- greedy
- BFS
- dfs
- Study
- sort
- DP
- Dynamic Programming
- ๋ฌธ์์ด
- ๋ฐฑํธ๋ํน
- ๊ทธ๋ํ ํ์
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_3182 : ํ๋์ด๋ ๊ณต๋ถ๊ฐ ํ๊ธฐ ์ซ์ด! ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- n๊ณผ n๊ฐ์ ์ซ์๋ฅผ ์
๋ ฅ๋ฐ๋๋ค.
- ์ซ์๋ ๋ค์ ์ซ์์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
- ๋ช ๋ฒ์งธ ์ซ์ ์ธ๋ฑ์ค์์ ์์ํด์ผ ๊ฐ์ฅ ๋ง์ ์ซ์๋ฅผ ๊ฑธ์น๋์ง ์ถ๋ ฅํ๋ค.
๐ธ ์ฝ๋ ๐ธ
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++)
arr[i] = sc.nextInt();
int max = -1, answer = -1;
for (int i = 0; i < n; i++) {
boolean[] visit = new boolean[n];
int idx = i;
int count = 0;
while (!visit[idx]) {
count++;
visit[idx] = true;
idx = arr[idx]-1;
}
if (count > max) {
max = count;
answer = i+1;
}
}
System.out.println(answer);
}
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ์ซ์ ๋ฐฐ์ด์ ๊ฐ ์ธ๋ฑ์ค์์ ๋ชจ๋ ์คํํด์ ๋ช ๊ฐ์ ์ซ์๋ฅผ ๊ฑธ์ณ๊ฐ๋์ง ์นด์ดํธํ๋ค.
- ์นด์ดํธ ํ์์ ์ต๋๊ฐ์ผ๋์ ์์ ์ธ๋ฑ์ค๋ฅผ ์ถ๋ ฅํ๋ค.
๐ธ end ๐ธ
- ์ต๋๊ฐ์ ์ฐพ์์ผ ํด์ ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ์ ์ง๊ฐํ๋ค.
728x90
'CodingTest > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_13699 : ์ ํ์ (0) | 2022.11.29 |
---|---|
BOJ_9625 : BABBA (0) | 2022.11.24 |
BOJ_1388 : ๋ฐ๋ฅ ์ฅ์ (0) | 2022.11.21 |
BOJ_16173 : ์ ํ์ ์ฉฐ๋ฆฌ (Small) (0) | 2022.11.21 |
BOJ_8979 : ์ฌ๋ฆผํฝ (0) | 2022.11.20 |