Ural 1018. A Binary Apple Tree

来源:互联网 发布:淘宝刷单后果是什么 编辑:程序博客网 时间:2024/05/16 19:38

这道题,可以马上看出是树形Dp,f[i,j]表示以i为根的子树(还包括 [i与 i的父亲] 这条边)内,保存j条边最多可以有多少苹果,显然f[i,j]=max(f[left[i],k]+f[right[i],j-k-1])+apple[i];输出的结果是f[1][q+1],q+1是因为根节点还多了一个虚拟的边。还有,因为输入数据没告诉谁是父节点谁是子节点,要建成无向图。

原创粉丝点击