설명
RiseOJ 연구소의 조직은 \(N\)개의 연구실과 \(N-1\)개의 통로로 이루어진 트리이다. 연구실에는 \(1\)번부터 \(N\)번까지 번호가 붙어 있고, 중앙 연구실인 \(1\)번이 루트이다.
\(i\)번 연구실의 연구원을 팀에 포함하면 기여도 \(A_i\)를 얻는다. 기여도는 음수일 수도 있다.
정확히 \(K\)개의 연구실을 선택하되 다음 조건을 모두 만족해야 한다.
- \(1\)번 연구실을 반드시 선택한다.
- 선택한 연구실들만 남겼을 때 서로 모두 연결되어 있어야 한다.
조건을 만족하는 연구팀의 기여도 합의 최댓값을 구하여라.
제약
- \(1 \le K \le N \le 1\,000\)
- \(K \le 100\)
- \(-10^9 \le A_i \le 10^9\)
- 주어진 그래프는 트리이다.
입력 형식
첫째 줄에 연구실의 수 \(N\)과 선택할 연구실의 수 \(K\)가 주어진다.
둘째 줄에 \(N\)개의 정수 \(A_1,A_2,\ldots,A_N\)이 주어진다.
다음 \(N-1\)개의 줄에 통로가 연결하는 두 연구실 \(u\), \(v\)가 주어진다.
출력 형식
가능한 기여도 합의 최댓값을 출력한다.
서브태스크
| 서브태스크 | 점수 | 설명 |
|---|---|---|
Subtask 1 | 20점 | \(1 \le N \le 11\) |
Subtask 2 | 80점 | 추가 제한이 없다. |
예제 1
입력
5 3
5 -2 4 3 1
1 2
1 3
3 4
3 5
출력
12
설명
연구실 1, 3, 4를 선택하면 연결 상태를 유지하면서 기여도 합 \(5+4+3=12\)를 얻는다.
예제 2
입력
3 2
-5 -4 -3
1 2
2 3
출력
-9
설명
1번을 포함해야 하므로 1번과 2번을 선택한 -9가 답이다.
문제 정보
rip 작성
출처 RiseOJ Original
태그