728x90
๐ ๏ธ ๋ฌธ์ ๐ ๏ธ


๐๏ธ ์ค๋ช ๐๏ธ
์ค๋์ ๋ค์๊ณผ ๊ฐ์ ์น๊ตฌ ๊ด๊ณ๋ฅผ ๊ฐ์ง ์ฌ๋ A, B, C, D, E๊ฐ ์กด์ฌํ๋์ง ๊ตฌํด๋ณด๋ ค๊ณ ํ๋ค.
- A๋ B์ ์น๊ตฌ๋ค.
- B๋ C์ ์น๊ตฌ๋ค.
- C๋ D์ ์น๊ตฌ๋ค.
- D๋ E์ ์น๊ตฌ๋ค.
์ฐ์ ์ฌ๊ธฐ์ ์ ์ ์๋ ๊ฒ์ N๋ช ์ค 5๋ช ์ด ์ด์ ๊ฐ์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉด ๋๋ค.
์ด๋ฌํ ์น๊ตฌ ๊ด๊ณ๋ฅผ ๊ตฌํ๊ธฐ ์ํด์๋ ๊น์ด ์ฐ์ ํ์์ ํ์ฌ ๊ตฌํ ์ ์๋ค.
๊ทธ๋ํ์ ๊น์ด๊ฐ 5์ด์์ผ ๊ฒฝ์ฐ ์์ ๊ฐ์ ๊ด๊ณ๊ฐ ์กด์ฌํ๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
๋จ, ์ด๋ ํ๋ณ๋ง ํ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ๊ด๊ณ๋ฅผ ๋ฐ๊ฒฌํ๋ฉด ๋ชจ๋ ํ์์ ๋ฉ์ถ ์ ์๋๋ก ํ๋ค.
๐ ํ์ด ๐
package Baekjoon;
import java.io.*;
import java.util.*;
public class DFS13023 {
static ArrayList<Integer>[] friendship;
static boolean[] visited;
static boolean flag; //๊ฒฐ๊ณผ ํ๋ณ ๋ณ์
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
visited = new boolean[n];
friendship = new ArrayList[n];
for(int i = 0; i < n; i++) {
friendship[i] = new ArrayList<>();
}
flag = false;
for(int i = 0; i < m; i++) {
st = new StringTokenizer(br.readLine());
int x = Integer.parseInt(st.nextToken());
int y = Integer.parseInt(st.nextToken());
friendship[x].add(y);
friendship[y].add(x);
}
for(int i = 0; i < n; i++) {
visited[i] = true;
dfs(i, 1);
visited[i] = false;
if(flag) { //์ด๋ฏธ ๊ด๊ณ๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ
break;
}
}
if(flag) {
bw.write("1");
}
else {
bw.write("0");
}
bw.flush();
bw.close();
}
static void dfs(int c, int count) {
if(count == 5) { //depth๊ฐ 5์ธ ๊ฒฝ์ฐ
flag = true;
return;
}
if(flag) { //์ด๋ฏธ ๊ด๊ณ๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ
return;
}
for(int i : friendship[c]) {
if(!visited[i]) {
visited[i] = true;
dfs(i, count + 1);
visited[i] = false;
}
}
}
}
728x90
'ProgramSolve > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] 2230๋ฒ - ์ ๊ณ ๋ฅด๊ธฐ (Java) (1) | 2024.03.22 |
---|---|
[BOJ] 2529๋ฒ - ๋ถ๋ฑํธ (Java) (0) | 2024.03.11 |
[BOJ] 2477๋ฒ - ์ฐธ์ธ๋ฐญ (Java) (4) | 2024.02.19 |
[BOJ] 1068๋ฒ - ํธ๋ฆฌ (Java) (0) | 2024.02.01 |
[BOJ] 5397๋ฒ - ํค๋ก๊ฑฐ (Java) (2) | 2024.01.28 |