codes/programmers
49189 가장 먼 노드
카제xd
2024. 12. 4. 00:13
https://school.programmers.co.kr/learn/courses/30/lessons/49189
from collections import deque
def solution(n, edge):
adjc = [[] for _ in range(n+1)]
for ed in edge:
adjc[ed[0]].append(ed[1])
adjc[ed[1]].append(ed[0])
queue = deque([1])
distance = [-1 for _ in range(n+1)]
distance[1] = 0
while queue:
v = queue.popleft()
for vv in adjc[v]:
if distance[vv] == -1:
distance[vv] = distance[v] + 1
queue.append(vv)
max_dist = max(distance)
return distance.count(max_dist)
[개선할 점]
- dfs, bfs 개념을 더 자세히 공부하자. 이건 우선 bfs
- distance -1 말고 visited 리스트를 따로 둘 수도 있다!