만드는 중입니다

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

항상 온라인

시간 제한4초메모리 제한512 MB

요약
정점 사이의 간선 서로소 경로가 최대 두 개인 연결 그래프에서, 모든 쌍 s < t에 대해 s ⊕ t ⊕ flow(s, t)의 총합을 구합니다.
난이도

어려움10점 중 8점

유형
그래프, 트리, DFS, 비트 연산
정답자
아직 제출이 없습니다

문제

Wayne은 어느 대도시 통신망의 관리자이다. 이 망은 정점 nn개와 간선 mm개를 가진 단순 연결 그래프로 표현된다. 자기 루프가 없고, 두 정점 사이의 간선은 최대 하나이며, 두 정점 사이에는 경로가 적어도 하나 있다. 또한 두 정점 사이에 간선을 공유하지 않는 경로가 최대 두 개 있다.

Wayne은 각 간선의 대역폭을 알고 있지만, 이것만으로는 부족하다. 화면에 보여 줄 통계 자료가 많이 필요하다. 예를 들어 임의의 두 정점 사이에서 전송할 수 있는 최대 데이터 전송률이 얼마인지 알고 싶어 한다. 정점은 1부터 nn까지 번호가 매겨져 있고, 각 간선이 초당 전송할 수 있는 최대 비트 수가 주어진다. 다음 식의 값을 계산하라.

∑1≤s<t≤n(s⊕t⊕flow(s,t))\sum_{1 \le s < t \le n}{(s \oplus t \oplus \text{flow}(s, t))}

여기서 ⊕\oplus는 비트 단위 배타적 논리합(XOR) 연산자이고, flow(s,t)\text{flow}(s, t)는 정점 ss와 정점 tt 사이에서 초당 전송할 수 있는 최대 비트 수이다.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다.

첫 줄에 정수 nn과 mm이 주어진다.

이어서 mm개의 줄에 세 정수 uu, vv, ww가 주어진다. 이는 정점 uu와 정점 vv 사이의 양방향 간선을 뜻하며, 각 방향으로 초당 최대 ww비트를 전송할 수 있다.

1≤T≤1001 \le T \le 100, 1≤n≤1051 \le n \le 10^5, n−1≤m≤32(n−1)n - 1 \le m \le \frac{3}{2}(n - 1), 1≤u,v≤n1 \le u, v \le n, u≠vu \ne v, 0≤w<1090 \le w < 10^9이다.

모든 테스트 케이스의 nn 합은 10610^6을 넘지 않으며, 표준 입력 파일의 크기는 26 MiB를 넘지 않는다.

출력

각 테스트 케이스에 대해 답을 한 줄에 출력한다.

힌트

첫 번째 예제에서 flow(1,2)=flow(1,3)=10\text{flow}(1, 2) = \text{flow}(1, 3) = 10이고, flow(2,3)=11\text{flow}(2, 3) = 11이다.

예제1

  1. 예제 1

    입력
    2
    3 3
    1 2 5
    2 3 6
    3 1 5
    5 6
    1 2 5
    2 3 6
    3 1 5
    3 4 6
    4 5 5
    5 3 6
    
    예상 출력
    27
    116