https://school.programmers.co.kr/learn/courses/30/lessons/49189#
코드
from collections import deque
def solution(n, edge):
graph = [[] for _ in range(n+1)]
visited = [0] * (n+1)
for e in edge:
x, y = e[0], e[1]
graph[x].append(y)
graph[y].append(x)
q = deque()
q.append(1)
visited[1] = 1
while q:
p = q.popleft()
for i in graph[p]:
if not visited[i]:
visited[i] = visited[p] + 1
q.append(i)
max_value = max(visited)
answer = visited.count(max_value)
return answer
BFS를 이용하여 문제를 해결할 수 있다.
'코딩테스트 > programmers (python)' 카테고리의 다른 글
Programmers / 2단계 / 행렬 테두리 회전하기 / python (0) | 2024.09.02 |
---|---|
Programmers / 2단계 / 수식 최대 / python / 2020 카카오 인턴십 (0) | 2024.07.29 |
Programmers / 3단계 / 무인도 여행 / python (0) | 2024.07.18 |
Programmers / 3단계 / 섬 연결하기 / python / Greedy / Kruskal 알고리즘 (0) | 2024.07.13 |
Programmers / 3단계 / 징검다리 건너기 / python / 2019 카카오 개발자 겨울 인턴십 (0) | 2024.05.24 |