만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

개미억장와르르맨션

시간 제한2초메모리 제한1024 MB

요약
0번 둥지에서 1번부터 N번 둥지까지 모두 잇는 최소 위험도 경로 집합을 구하고, 그중 최소 체력 소모량을 출력합니다. 도달할 수 없는 둥지가 있으면 -1을 출력합니다.
난이도

보통10점 중 6점

유형
최소 신장 트리, 그래프, 트리
정답자
아직 제출이 없습니다

문제

개미 왕국에는 N+1N+1개의 개미굴이 있으며, 각 개미굴은 00번부터 NN번까지 차례대로 번호가 붙어 있다. 서로 다른 두 개미굴을 잇는 양방향 길이 MM개 있다. 어느 날 폭우가 쏟아진 뒤 개미 왕국은 붕괴 위기에 놓였고, 모든 길의 붕괴 위험도를 측정하였다. ii번 길의 붕괴 위험도는 did_{i}이다. 기본적으로 모든 길의 위험도는 서로 다르다. 다만 00번 개미굴과 직접 이어진 길들은 위험도가 같을 수 있다.

그렇다면 개미굴은 안전할까?

현재 00번 개미굴에 11번부터 NN번까지 번호가 붙은 개미 NN마리가 모여 있다. ii번 개미는 ii번 개미굴이 안전한지 확인하기 위해 여정을 떠난다. 개미들은 여정에서 이용하는 길들의 위험도 합이 최소가 되도록 이동하려 한다. 즉, NN마리의 개미가 이용하는 길 번호들의 집합을 S={s1,s2,⋯ ,sM}S=\{s_{1}, s_{2}, \cdots, s_{M}\}라 할 때, 다음 값 WW를 최소화하려 한다.

W=∑i=1MdsiW=\sum_{i=1}^{M}{d_{s_{i}}}

개미는 길을 하나 이용할 때마다 체력을 11만큼 소모한다. WW가 최소일 때 개미들이 소모하는 체력의 합이 최소가 되도록 개미들을 도와주자.

입력

첫째 줄에 NN과 MM이 공백을 두고 주어진다. (1≤N≤200 000;1≤M≤200 000)(1\leq N \leq 200\,000; 1 \leq M \leq 200\,000)

이후 MM개의 줄에는 길의 정보 uu, vv, dd가 공백을 두고 주어진다. uu번 개미굴과 vv번 개미굴을 잇는 길의 위험도가 dd라는 뜻이다. (0≤u,v≤N;u≠v;1≤d≤109)(0\leq u,v \leq N; u \neq v; 1\leq d \leq 10^{9})

출력

WW가 최소일 때, 개미들이 소모할 체력 합의 최솟값을 출력하시오. 단, NN개의 개미굴을 모두 점검할 수 없다면 −1-1을 출력한다.

예제2

  1. 예제 1

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

    입력
    2 1
    0 1 3
    
    예상 출력
    -1