반응형
코드
import sys
from collections import defaultdict
def find(a,b):
queue = []
queue.append((a,0))
visit[a] = True
while queue:
next,len = queue.pop()
if next == b:
return len
for i,l in dic[next]:
if visit[i]:
continue
visit[i] = True
queue.append((i,l+len))
n,m = map(int,input().split())
dic = defaultdict(list)
for i in range(n-1):
a,b,l = map(int,sys.stdin.readline().split())
dic[a].append((b,l))
dic[b].append((a,l))
for i in range(m):
visit = [False]*(n+1)
a,b = map(int,sys.stdin.readline().split())
print(find(a,b))
반응형
'알고리즘 > 트리' 카테고리의 다른 글
[백준][Python] 1967번 트리의 지름 (0) | 2022.10.11 |
---|---|
[백준][Python] 14267번 회사 문화 1 (0) | 2022.09.30 |
[백준][Python] 4803번 트리 (0) | 2022.09.27 |
[백준][Python] 4256 트리 (0) | 2022.03.11 |
[백준][Python] 9489번 사촌 (0) | 2022.03.10 |
댓글