from heapq import heappush, heappop INF = 10 ** 18 def dijkstra(s, N): # (始点, ノード数) dist = [INF for _ in range(N)] hq = [(0, s)] dist[s] = 0 seen = [0] * N # ノードが確定済みかどうか while hq: d, v = heappop(hq) # ノードを pop する if seen[v]: continue seen[v] = 1 for to, cost in G[v]: # ノード v に隣接しているノードに対して if dist[v] + cost < dist[to]: dist[to] = dist[v] + cost heappush(hq, (dist[to], to)) return dist import sys input = sys.stdin.readline N = int(input()) G = [[] for _ in range(N)] for _ in range(N-1): u, v, w = map(int, input().split()) u-=1 v-=1 G[u].append((v, w)) G[v].append((u, w)) dist = dijkstra(0, N) ma = -INF idx = -1 for i, d in enumerate(dist): if ma