Notice
Recent Posts
Recent Comments
Link
-
floyd warshall :: 백준 :: 케빈 베이컨의 6단계 법칙 :: 1389 본문
케빈 베이컨의 6단계 법칙 1389
[풀이 방법]
이 문제 역시 dfs, bfs, 플로이드 와샬 알고리즘 등 다양한 방법으로 풀 수 있다.
난 플로이드 와샬 알고리즘으로 풀어봐야지... 가장 간단한 방법인 것 같다.
1. 첫째 줄에 N과 K를 입력받는다. N은 정점, K는 간선의 수라고 생각했다.
2. relation이라는 N+1 X N+1 행렬을 생성 후 이후에 나오는 간선 정보들을 저장했다.
여기서, 1이 3을 알때 3도 1을 안다고 볼 수 있으므로
relation[1][3] = 1
relation[3][1] = 1
을 해준다.
3. 탐색을 시작한다.
relation[r][k] != 0이고 relation[k][c] != 0 일때
-relation[r][c] == 0이면
relation[r][c] = relation[r][k] + relation[k][c]
-relation[r][c] != 0이면
relation[r][c] = relation[r][c] < relation[r][k]+relation[k][c] ? relation[r][c] relation[r][k]+relation[k][c]
4. 탐색이 끝나면 케빈베이컨수가 가장 작은 사람을 출력해 주면 된다.
'알고리즘 > 탐색' 카테고리의 다른 글
BFS :: 백준 :: 불 :: 5427 - 작성중.. (0) | 2016.12.13 |
---|---|
floyd warshall :: 백준 :: 역사 :: 1613 (0) | 2016.11.28 |
BFS :: 백준 :: 배열에서 이동 :: 1981 (0) | 2016.11.28 |
탐색 :: 백준 :: 문자판 :: 2186 (0) | 2016.11.07 |
floyd warshall :: 백준 :: 경로 찾기 :: 11403 (0) | 2016.11.03 |
Comments