728x90
반응형
1번 노드에서 제일 먼 노드가 몇 개 인지 찾는 문제이다.
BFS로 아주 쉽게 풀 수 있다.
from collections import deque
def solution(N, edge):
graph = [[] for _ in range(N+1)]
for a, b in edge:
graph[a].append(b)
graph[b].append(a)
q = deque([1])
check_li = [-1]*(N+1)
check_li[1] = 0
while q:
node = q.popleft()
for n in graph[node]:
if 0 < n <= N and check_li[n] == -1:
q.append(n)
check_li[n] = check_li[node] + 1
ans = check_li.count(max(check_li))
return ans
728x90
반응형
'Agorithm > 프로그래머스' 카테고리의 다른 글
프로그래머스 Level 1 키패드 누르기 (0) | 2022.06.13 |
---|---|
프로그래머스 Level 3 단어 변환 (0) | 2021.07.15 |
프로그래머스 Level 3 네트워크 (0) | 2021.07.15 |
프로그래머스 Level 3 여행경로 (0) | 2021.07.15 |
프로그래머스 Level 3 순위 (2) | 2021.07.13 |