아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

거대한 소 모임

면접 대비

시간 제한1초메모리 제한128 MB

요약
가중치가 있는 트리에서 각 노드의 소 수가 거리에 곱해지는 총 이동 비용을 최소로 만드는 노드를 찾는다.
난이도

보통10점 중 6점

유형
트리, DFS, 동적 계획법, 누적 합
정답자
아직 제출이 없습니다

문제

Bessie는 매년 열리는 거대한 소 모임을 준비하고 있으며, 모임을 열기에 가장 편리한 헛간을 고르려고 합니다.

모든 소는 11번부터 NN번까지 번호가 매겨진 NN개의 헛간 중 하나에 살고 있습니다. 헛간들은 N−1N-1개의 길로 연결되어 있어 어떤 헛간에서든 다른 모든 헛간으로 이동할 수 있습니다. ii번째 길은 헛간 AiA_i와 BiB_i를 잇고 길이는 LiL_i이므로, 헛간들은 하나의 트리를 이룹니다. ii번 헛간에는 CiC_i마리의 소가 삽니다.

모임은 임의의 한 헛간에서 열 수 있습니다. 모임을 XX번 헛간에서 열 때의 불편함은 모든 소가 XX까지 이동해야 하는 거리의 합으로 정의됩니다. 즉, XX로부터 거리가 dd인 헛간에 CiC_i마리의 소가 있으면 그 헛간은 불편함에 Ci⋅dC_i \cdot d만큼 기여합니다. 예를 들어 XX에서 2020만큼 떨어진 헛간에 소가 33마리 살고 있다면, 이 헛간은 불편함에 3×20=603 \times 20 = 60을 더합니다.

불편함의 총합이 최소가 되는 헛간을 골라, 그때의 최소 불편함을 출력하세요.

제약 조건

  • 1≤N≤100,0001 \le N \le 100{,}000
  • 1≤Ai,Bi≤N1 \le A_i, B_i \le N
  • 1≤Li≤1,0001 \le L_i \le 1{,}000
  • 0≤Ci≤1,0000 \le C_i \le 1{,}000

입력

  • 11번째 줄: 정수 NN 하나.
  • 22번째 줄부터 N+1N+1번째 줄까지: i+1i+1번째 줄에는 ii번 헛간에 사는 소의 수 CiC_i가 하나씩 주어집니다.
  • N+2N+2번째 줄부터 2N2N번째 줄까지: 이 N−1N-1개의 줄에는 각각 세 정수 AiA_i, BiB_i, LiL_i가 주어지며, 헛간 AiA_i와 BiB_i를 잇는 길이 LiL_i의 길을 나타냅니다.

출력

  • 가능한 최소 불편함을 한 줄에 출력합니다.

예제2

  1. 예제 1

    입력
    5
    1
    1
    0
    0
    2
    1 3 1
    2 3 2
    3 4 3
    4 5 3
    
    예상 출력
    15
    
  2. 예제 2

    입력
    2
    1
    1
    1 2 5
    
    예상 출력
    5