https://www.acmicpc.net/problem/1389
1389호: 케빈 베이컨의 6단계 규칙
첫 번째 행은 사용자 수 N(2 ≤ N ≤ 100)과 친구 수 M(1 ≤ M ≤ 5,000)을 제공합니다. 우정 관계는 두 번째 행부터 M 행에 제공됩니다. 우정은 A와 B로 구성되며, 이는 A와 B가 친구라는 것을 의미합니다.
www.acmicpc.net

자바 코드
import java.util.Scanner;
public class Main {
public static void main(String() args) {
Scanner sc = new Scanner(System.in);
int num = 0;
int min = 1000000000;
int max = 1000000000;
int n = sc.nextInt();
int m = sc.nextInt();
int arr()() = new int(n + 1)(n + 1);
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= n; j++) {
if(i == j) arr(i)(j) = 0;
else arr(i)(j) = max;
}
}
for(int i = 0; i < m; i++) {
int a = sc.nextInt();
int b = sc.nextInt();
arr(a)(b) = arr(b)(a) = 1;
}
for(int k = 1; k <= n; k++) {
for(int i = 1; i <= n; i++) {
for(int j= 1; j <= n; j++) {
if(arr(i)(j) > arr(i)(k) + arr(k)(j)) arr(i)(j) = arr(i)(k) + arr(k)(j);
}
}
}
for(int i = 1; i <= n; i++) {
int count = 0;
for(int j = 1; j <= n; j++) count += arr(i)(j);
if(min > count) {
min = count;
num = i;
}
}
System.out.println(num);
}
}
