철도 2
시간 제한2초메모리 제한1024 MB
가중치가 있는 트리에서 모든 순서쌍 (x, y)마다 길이가 D 이상인 특급 열차만 타고 x에서 y로 갈 수 있는 최대 D를 구하고, 그 합을 10^9+7로 나눈 나머지를 출력합니다.
문제
IOI 나라는 개의 도시와 도시들을 잇는 개의 양방향 철도로 이루어져 있다. 서로 다른 두 도시는 철도만으로 오갈 수 있으므로, IOI 나라의 철도망은 트리 구조를 이룬다. 도시에는 이상 이하의 서로 다른 번호가 붙어 있고, 철도에도 이상 이하의 서로 다른 번호가 붙어 있다. 모든 에 대하여 번 철도는 번 도시와 번 도시를 양방향으로 연결하며, 철도의 길이는 이다.
IOI 나라의 어떤 도시에서 출발하더라도 직통 열차를 타면 다른 도시로 바로 이동할 수 있다. 즉, , 인 개의 순서쌍 마다 번 도시에서 출발하여 번 도시에 도착하는 직통 열차가 있다. 번 도시에서 이 열차에 타면 번 도시에 도착할 때까지 내릴 수 없다. 이 열차의 소요 시간은 철도망에서 번 도시와 번 도시를 잇는 유일한 단순 경로 위 철도들의 길이를 합한 값과 같다.
서로 다른 두 도시 , 에 대하여 즐거움 는 다음 조건을 만족하는 최대의 양의 정수 로 정의한다. 번 도시에서 출발해 소요 시간이 이상인 직통 열차만 타고 유한 번 이동하여 번 도시에 도착할 수 있다.
, 인 모든 개의 순서쌍 에 대한 의 합을 ()로 나눈 나머지를 구하는 프로그램을 작성하라.
제한
- IOI 나라의 철도망은 트리 구조를 이룬다.
- 모든 에 대해 이고 이다 ().
- 모든 에 대해 이다 ().