Algorithm/백준
[백준] 13023번 ABCDE
sirius
2021. 3. 9. 10:06
https://www.acmicpc.net/problem/13023
13023번: ABCDE
문제의 조건에 맞는 A, B, C, D, E가 존재하면 1을 없으면 0을 출력한다.
www.acmicpc.net
한 배열 리스트에 4개 이상이 쌓이면 관계가 존재하는 것
import java.util.*;
import java.io.*;
public class Main {
static int n, m;
static List<Integer>[] list;
static boolean[] visit;
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
// 사람 수
n = sc.nextInt();
// 친구 관계 수
m = sc.nextInt();
list = new ArrayList[n];
for(int i=0; i < n; i++) {
list[i] = new ArrayList<>();
}
for(int i = 0; i < m; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
list[a].add(b);
list[b].add(a);
}
for(int i = 0; i < n; i++){
visit = new boolean[n];
dfs(i, 0);
}
System.out.println(0);
}
public static void dfs(int start, int depth) {
if(depth == 4) {
System.out.println(1);
System.exit(0);
}
visit[start] = true;
for(int i = 0; i < list[start].size(); i++) {
int temp = list[start].get(i);
if(!visit[temp]) {
visit[temp] = true;
dfs(temp, depth + 1);
visit[temp] = false;
}
}
}
}