밀집 부분 그래프
시간 제한3초메모리 제한512 MB
정점 가중치가 있는 차수 5 이하의 트리에서, 연결된 부분집합 밀도의 최댓값이 x 이하인 정점 집합 L의 개수를 셉니다.
문제
정점이 개인 트리가 주어진다. 각 정점 에는 가중치 가 있고, 모든 정점의 차수는 최대 5이다.
정점 집합 의 밀도는 다음과 같이 정의한다.
트리의 정점 집합 을 생각한다. 의 아름다움은 의 부분집합 중 정점을 두 개 이상 포함하고 유도 부분 그래프가 연결된 것들의 밀도 최댓값이다. 그런 가 없으면 아름다움은 0이다.
을 고르는 방법은 가지이다. 아름다움이 이하인 은 몇 개인지 구하라. 답이 매우 클 수 있으므로 로 나눈 나머지를 출력한다.
입력
첫 줄에 테스트 케이스의 개수 ()가 주어진다.
각 테스트 케이스의 첫 줄에는 정수 ()과 ()가 주어진다.
다음 줄에는 개의 정수 ()이 주어진다.
이어서 개의 줄에 정점 와 ()를 잇는 간선이 하나씩 주어진다. 주어지는 그래프는 트리이며, 각 정점의 차수는 최대 5이다.
출력
각 테스트 케이스마다 아름다움이 이하인 부분 집합 의 개수를 로 나눈 나머지를 한 줄에 출력한다.