https://programmers.co.kr/learn/courses/30/lessons/49189
다익스트라 알고리즘으로 구현해서 풀면 된다. 무방향 그래프이기 때문에 양쪽 방향으로 이동 가능한 것을 설정해줘야 함.
나의 풀이
from collections import deque
def solution(n,vertex):
graph = [[] for _ in range(n+1)]
visited = [0 for _ in range(n+1)]
for ver in vertex:
graph[ver[0]].append(ver[1])
graph[ver[1]].append(ver[0])
queue = deque()
visited[1]=1
queue.append((1,1))
while queue:
now, length = queue.popleft()
for i in graph[now]:
if visited[i] == 0:
queue.append((i,length+1))
visited[i] = length+1
return visited.count(max(visited))
'Programming > Programmers' 카테고리의 다른 글
[프로그래머스] 보석 쇼핑 (Python) (0) | 2021.11.09 |
---|---|
[프로그래머스] 순위 (Python) (0) | 2021.11.08 |
[프로그래머스] 추석 트래픽 (Python) (0) | 2021.11.08 |
[프로그래머스] N개의 최소공배수 (Python) (0) | 2021.11.07 |
[프로그래머스] JadenCase 문자열 만들기 (Python) (0) | 2021.11.07 |
댓글