사람이 먼저 되라
시간 제한5초메모리 제한1024 MB
가중치가 있는 트리가 주어질 때, 모든 단순 경로에 대해 경로 간선 가중치의 합과 최대 간선 가중치를 곱한 값을 모두 더하고 10^9+7로 나눈 나머지를 구합니다.
문제
송도고의 교시(校是)는 "사람이 먼저 되라"이다.
재작년에 송도고에 입학한 도훈이는 등교할 때 바위에 쓰인 이 글귀를 읽었다. 하지만 도훈이는 이 글귀를 정말로 사람이 되어야 한다는 뜻으로 이해하고, 100일간 먹을 질 좋은 마늘과 쑥을 찾아다니기 시작했다.

2021년 겨울에 송도고등학교 정문에서 찍은, 교시가 적힌 바위이다.
우선 도훈이는 2년 반 동안 전 세계의 마늘을 비교해 최고의 마늘을 찾아냈다. 이제 쑥만 고르면 된다. 그런데 도훈이는 졸업 전까지 100일간 마늘과 쑥을 먹고 사람이 될 계획이었다. 마늘을 고르고 나니 시간이 얼마 남지 않았다!
쑥은 개의 정점과 개의 가중치를 가진 간선으로 이루어진 트리로 표현할 수 있다. 트리로 표현한 쑥의 가치는 다음과 같이 정의한다.
- 각 단순 경로에 대해 맛은 경로 위 간선들의 가중치 합이다.
- 각 단순 경로에 대해 향은 경로 위 간선들의 가중치 최댓값이다.
- 간선을 하나 이상 포함하는 모든 단순 경로에 대한 맛과 향의 곱을 더한 값이 쑥의 가치이다.
- 단순 경로의 방향은 구분하지 않는다.
도훈이가 쑥을 빠르게 고를 수 있도록, 주어진 쑥의 가치를 구하는 프로그램을 작성하여라. 가치가 매우 커질 수 있으므로 로 나눈 나머지를 출력한다.
입력
첫 번째 줄에 정점의 개수 이 주어진다.
이어서 개의 줄에 간선의 정보를 나타내는 정수 , , 가 차례대로 주어진다. 이는 간선이 와 를 연결하며, 의 가중치를 가진다는 의미이다.
출력
주어진 쑥의 가치를 로 나눈 나머지를 출력하여라.
제한
- .
- .
- 각 쌍에 대해 이다.
- .
- 주어지는 그래프는 트리임이 보장된다.
힌트
- 트리는 사이클이 없는 연결 그래프이다.
- 트리에서 단순 경로는 두 정점을 연결하는 경로 중 사용하는 간선의 수가 최소인 경로이다.