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
Java 코드
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);
}
}
'백준' 카테고리의 다른 글
백준 1309 동물원(Java) (0) | 2023.02.18 |
---|---|
백준 1946 신입 사원(Java) (0) | 2023.02.18 |
백준 11660 구간 합 구하기 5(Java) (0) | 2023.02.18 |
백준 2583 영역 구하기(Java) (0) | 2023.02.17 |
백준 11286 절댓값 힙(Java) (0) | 2023.02.17 |