만드는 중입니다

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

최소 컷

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

요약
가중치가 있는 무방향 그래프와 모든 정점을 잇는 가중치 10^9 순환 간선이 주어질 때, 모든 정점 쌍의 최소 컷 값의 합을 998244353으로 나눈 나머지를 구합니다.
난이도

어려움10점 중 9점

유형
그래프, 분할 정복
정답자
아직 제출이 없습니다

문제

오늘 Rikka는 정점이 nn개, 간선이 mm개인 무방향 그래프 GG를 얻었다. 정점은 1부터 nn까지의 정수로 번호가 매겨져 있다. ii번째 간선은 정점 uiu_i와 viv_i를 잇고, 가중치는 wiw_i이다.

Rikka는 해밀턴 그래프, 즉 해밀턴 순환을 갖는 그래프를 좋아한다. 그래서 Rikka는 GG를 바탕으로 항상 해밀턴 그래프가 되는 그래프를 만든다. 이를 위해 nn개의 간선을 추가한다. ii번째 추가 간선은 정점 ii와 (i mod n+1)(i \bmod n + 1)을 잇고, 가중치는 10910^9이다.

c(i,j)c(i, j)를 정점 ii와 jj 사이 최소 컷의 값이라고 하자. 간선 집합 C⊆EC \subseteq E가 ii와 jj 사이의 컷이라는 것은, 그래프 G1=⟨V,E∖C⟩G_1 = \langle V, E \setminus C \rangle에서 두 정점 ii와 jj가 직접 또는 간접으로 연결되지 않는다는 뜻이다. 최소 컷은 간선 가중치 합이 가장 작은 컷이며, c(i,j)c(i, j)는 그 합이다.

Rikka는 다음 값을 구해 달라고 한다. ∑i=1n∑j=i+1nc(i,j)\sum_{i=1}^{n} \sum_{j=i+1}^{n} c(i, j)

입력

첫 줄에 두 정수 nn과 mm이 주어진다 (3≤n≤200003 \leq n \leq 20000, 0≤m≤200000 \leq m \leq 20000).

이어서 mm개의 줄에 세 정수 uiu_i, viv_i, wiw_i가 주어진다 (1≤ui,vi≤n1 \leq u_i, v_i \leq n, ui≠viu_i \neq v_i, 1≤wi≤100001 \leq w_i \leq 10000).

그래프에는 자기 루프가 없지만 중복 간선은 있을 수 있다.

출력

답을 998244353으로 나눈 나머지를 한 줄에 출력한다.

예제1

  1. 예제 1

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