만드는 중입니다

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

블로거 여행자

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

난이도

아직 분류되지 않았습니다

정답자
아직 제출이 없습니다

문제

얀과 타티아나는 여행 블로거가 되어 자기 나라의 도시들을 다니며 영상을 올리기로 했다.

나라에는 1번부터 nn번까지 번호가 붙은 nn개의 도시가 있다. 1번 도시는 수도이다. 도시들은 1번부터 mm번까지 번호가 붙은 mm개의 양방향 도로로 연결되어 있으며, 각 도로는 서로 다른 두 도시를 잇는다. 같은 두 도시를 여러 도로가 이을 수 있다. 어느 도시에서든 도로를 따라 다른 모든 도시에 갈 수 있다.

두 사람은 수도에서 출발해 다른 도시 중 한 곳으로 갈 계획이지만, 아직 목적지를 정하지 않았다. kk번 도시로 가는 경로는 도시 s1,s2,…,sqs_1, s_2, \ldots, s_q와 도로 r1,r2,…,rq−1r_1, r_2, \ldots, r_{q-1}로 이루어지며, 다음 조건을 만족해야 한다.

  • s1=1s_1 = 1, sq=ks_q = k이다.
  • 도로 rir_i는 도시 sis_i와 si+1s_{i+1}을 잇는다.
  • 같은 도로를 두 번 지나지 않으므로 모든 rir_i는 서로 달라야 한다. 같은 도시를 여러 번 지나가도 되며, 출발지인 1번 도시와 도착지인 kk번 도시를 여러 번 지나가도 된다.

각 도로 ii에 대해, 그 도로를 촬영한 영상의 길이 tit_i가 정해져 있다. 여행 중 두 사람은 경로의 도로를 하나씩 골라 영상을 찍는다. 얀은 짧은 영상을 좋아하므로 tit_i가 가장 작은 도로를 고르고, 타티아나는 긴 영상을 좋아하므로 tit_i가 가장 큰 도로를 고른다.

두 영상 길이의 합은 min⁡1≤i≤q−1tri+max⁡1≤i≤q−1tri\min\limits_{1 \leq i \leq q-1} t_{r_i} + \max\limits_{1 \leq i \leq q-1} t_{r_i}이다.

두 사람은 짧은 영상의 인기가 높은 플랫폼에 영상을 올릴 계획이라, 두 영상 길이의 합을 최소로 만들려고 한다. 각 도시 kk에 대해, 1번 도시에서 kk번 도시까지 가는 모든 경로 중 합의 최솟값을 구한다.

입력

첫 줄에 두 정수 nn, mm (2≤n≤300 0002 \leq n \leq 300\,000, 1≤m≤300 0001 \leq m \leq 300\,000)이 주어진다. 도시의 수와 도로의 수이다.

다음 mm개의 줄에는 도로에 대한 정보가 주어진다. ii번째 줄에는 세 정수 uiu_i, viv_i, tit_i (1≤ui,vi≤n1 \leq u_i, v_i \leq n, ui≠viu_i \neq v_i, 0≤ti≤1090 \leq t_i \leq 10^9)가 주어진다. 도로가 잇는 두 도시의 번호와 그 도로의 영상 길이이다.

주어진 도로로 어느 도시에서든 다른 모든 도시에 갈 수 있음이 보장된다. 필요하면 다른 도시를 거쳐 갈 수 있다.

출력

각 2≤k≤n2 \leq k \leq n에 대해, 도시 kk에서 끝나는 여행에서 두 영상 길이 합의 최솟값을 출력한다.

힌트

첫 번째 예시에서 가능한 최적 경로는 다음과 같다.

  • 1→t=13→t=121 \overset{t = 1}{\to} 3 \overset{t = 1}{\to} 2. 영상 길이 합은 1+1=21 + 1 = 2이다.
  • 1→t=131 \overset{t = 1}{\to} 3. 영상 길이 합은 1+1=21 + 1 = 2이다.

두 번째 예시에서 가능한 최적 경로는 다음과 같다.

  • 1→t=221 \overset{t = 2}{\to} 2. 영상 길이 합은 2+2=42 + 2 = 4이다.
  • 1→t=22→t=331 \overset{t = 2}{\to} 2 \overset{t = 3}{\to} 3. 영상 길이 합은 2+3=52 + 3 = 5이다.
  • 1→t=22→t=33→t=45→t=441 \overset{t = 2}{\to} 2 \overset{t = 3}{\to} 3 \overset{t = 4}{\to} 5 \overset{t = 4}{\to} 4. 영상 길이 합은 2+4=62 + 4 = 6이다.
  • 1→t=22→t=33→t=451 \overset{t = 2}{\to} 2 \overset{t = 3}{\to} 3 \overset{t = 4}{\to} 5. 영상 길이 합은 2+4=62 + 4 = 6이다.
  • 1→t=22→t=33→t=45→t=44→t=461 \overset{t = 2}{\to} 2 \overset{t = 3}{\to} 3 \overset{t = 4}{\to} 5 \overset{t = 4}{\to} 4 \overset{t = 4}{\to} 6. 영상 길이 합은 2+4=62 + 4 = 6이다.
  • 1→t=22→t=81→t=671 \overset{t = 2}{\to} 2 \overset{t = 8}{\to} 1 \overset{t = 6}{\to} 7. 영상 길이 합은 2+8=102 + 8 = 10이다.

세 번째 예시에서 가능한 최적 경로는 다음과 같다.

  • 1→t=22→t=03→t=14→t=321 \overset{t = 2}{\to} 2 \overset{t = 0}{\to} 3 \overset{t = 1}{\to} 4 \overset{t = 3}{\to} 2. 영상 길이 합은 0+3=30 + 3 = 3이다.
  • 1→t=22→t=031 \overset{t = 2}{\to} 2 \overset{t = 0}{\to} 3. 영상 길이 합은 0+2=20 + 2 = 2이다.
  • 1→t=22→t=03→t=141 \overset{t = 2}{\to} 2 \overset{t = 0}{\to} 3 \overset{t = 1}{\to} 4. 영상 길이 합은 0+2=20 + 2 = 2이다.

예제3

  1. 예제 1

    입력
    3 3
    1 2 2
    1 3 1
    2 3 1
    
    예상 출력
    2
    2
    
  2. 예제 2

    입력
    7 10
    1 2 2
    1 2 8
    2 3 3
    3 4 5
    3 5 4
    4 5 4
    6 5 7
    6 4 4
    1 7 6
    6 7 9
    
    예상 출력
    4
    5
    6
    6
    6
    10
    
  3. 예제 3

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