‹ 上一题 下一题 ›

g6-07499. 多棵树的依赖选择 未做

1000 ms 256 MB 测试点 10 通过率 100% 自拟题GESP-66级·树形DP入门树上背包森林转树

题目描述

给定一片森林(若干棵有根树),共 个结点,结点 有一个收益 (可以为负)。

你需要选择若干个结点:

  • 如果选择了结点 且它不是所在树的根,则必须选择它的父亲;
  • 选择的结点总数不超过 。

求所选结点收益之和的最大值。允许一个结点都不选,此时收益之和为 。

输入格式

第一行两个整数 与 。

第二行 个整数 。

第三行 个整数 : 表示结点 是它所在树的根;否则 是结点 的父亲,保证 。

输出格式

一行一个整数,表示收益之和的最大值。

样例 1

输入:

3 2
5 -1 4
0 0 1

输出:

9

森林由两棵树组成: 是根、 是 的孩子; 单独成树。选择 :,共 个结点,不超过 。

样例 2

输入:

1 1
-3
0

输出:

0

数据范围

  • 对于 的测试点,;
  • 对于 的测试点,;
  • 对于全部测试点,,,。
输入
输出

            
答案