일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- binary search
- dfs
- 알고리즘
- 파이썬
- 프로그래밍언어론
- 스타벅스
- 딥러닝
- C/C++
- 프로그래머스
- leetcode
- 스프링 프레임워크
- spring
- 백트래킹
- Spring Framework
- BFS
- 다이나믹프로그래밍
- Python
- 라인
- 모두를 위한 딥러닝
- 라인플러스
- C++
- 릿코드
- DP
- STL
- jvm
- 머신러닝
- 벤쿠버
- 백준
- 시애틀
- Java
Archives
- Today
- Total
케이스윔의 개발 블로그
[백준][BFS] 1389번 케빈 베이컨의 6단계 법칙 본문
문제
케빈 베이컨의 법칙은 모든 사람들이 서로 아는 사람 6단계 이내로 거쳐서 연결될 수 있다는 법칙입니다. N명의 사람이 주어졌을 때 자신을 제외한 모든 사람 각각과 연결된 합을 구한 것을 케빈 베이컨의 합이라고 하는데 최소 합을 가지는 사람의 번호를 출력하면 됩니다.
문제 출처: 백준 온라인 저지(https://www.acmicpc.net/problem/1389)
풀이
간단하게 BFS를 통해 풀 수 있는 문제입니다. 무조건 6단계 이내로 연결되기 때문에 BFS 탐색을 위한 큐가 비었을 때는 다른 사람과 몇단계를 거쳐서 연결되었는지 알 수 있게 됩니다. BFS를 사람수만큼 반복해주면 각 사람마다 연결된 합을 구할 수 있습니다.
코드
'Algorithm > DFS &BFS' 카테고리의 다른 글
[백준][BFS] 9205번 맥주 마시면서 걸어가기 (0) | 2019.01.27 |
---|---|
[백준][BFS] 빙산 (0) | 2018.12.30 |
[백준][BFS] 1525번 퍼즐 (0) | 2018.11.29 |
[백준][BFS] 9019번 DSLR (0) | 2018.11.28 |
[백준][BFS] 16236번 아기상어 (0) | 2018.11.06 |
Comments