레몬 경로

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

요약
연결된 무향 가중 그래프에서 1번 정점에서 각 정점까지 간선 개수가 최소인 경로들의 평균 가중치를 998244353으로 나눈 나머지로 구한다.
난이도

어려움10점 중 8점

유형
BFS, 동적 계획법, 조합론, 수학
정답자
아직 제출이 없습니다

문제

"난 벨만-포드보다 데이크스트라가 더 좋아...

근데 데이크스트라보다 BFS가 더 좋은데 어떡해?"

일반적으로, 간선에 가중치가 있는 무향 그래프에서 최단 경로는 간선 가중치의 합이 최소인 경로를 의미한다. 하지만 BFS를 너무 좋아하는 재원이는 경로에 포함된 간선의 개수를 최소화하고 싶다.

간선의 개수만 최소화하는 모든 경로를 레몬 경로라고 정의한다. 레몬 경로의 가중치는 해당 경로에 포함된 간선들의 가중치 합을 의미하며, 레몬 거리는 두 정점을 잇는 모든 레몬 경로에 대한 레몬 경로의 가중치의 평균을 의미한다.

정점이 NN개이고, 양방향 간선이 MM개 있는 연결 그래프가 주어진다. ii번째 간선은 U_iU\_i와 V_iV\_i를 연결하며, 그 가중치는 C_iC\_i이다.

11번 정점과 다른 모든 정점 사이의 레몬 거리를 구하여라. 그래프에는 자기 자신으로 가는 간선이나 같은 두 정점을 잇는 여러 간선이 존재할 수 있다.

입력

입력은 다음과 같은 형식으로 주어진다.

N MN \ M

U_1 V_1 C_1U\_1 \ V\_1 \ C\_1

U_2 V_2 C_2U\_2 \ V\_2 \ C\_2

⋮\vdots

U_M V_M C_MU\_M \ V\_M \ C\_M

출력

첫째 줄부터 N−1N-1개의 줄에 걸쳐 ii번째 줄에 11번 정점과 i+1i+1번 정점 사이의 레몬 거리를 다음과 같은 방법으로 출력한다.

레몬 경로의 길이가 pq\dfrac{p}{q}일 경우 qm≡p (mod 998 244 353)qm\equiv p \ (\mathrm{mod} \ 998 \ 244 \ 353), 0≤m<998 244 3530\le m<998 \ 244 \ 353인 양의 정수 mm을 출력한다. 단, pp와 qq는 서로소인 양의 정수이다. 또한 레몬 경로의 개수가 998 244 353998 \ 244 \ 353의 배수인 경우가 주어지지 않음이 보장된다.

제한

  • 2≤N≤100 0002 \le N \leq 100\ 000.
  • 1≤M≤500 0001 \le M \leq 500\ 000.
  • 1≤U_i,V_i≤N1 \leq U\_i, V\_i \leq N (1≤i≤M1 \leq i \leq M).
  • 0≤C_i<998 244 3530 \leq C\_i < 998 \ 244 \ 353 (1≤i≤M1 \leq i \leq M).

예제1

  1. 예제 1

    입력
    5 6
    1 2 0
    1 3 1
    2 4 2
    2 5 3
    3 4 4
    3 5 5
    
    예상 출력
    0
    1
    499122180
    499122181