动态规划-树上dp-1757. 搜集钻石

Posted hyserendipity

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了动态规划-树上dp-1757. 搜集钻石相关的知识,希望对你有一定的参考价值。

2020-04-08 08:05:15

问题描述:

蒜国有 n 座城市,编号从 1 到 n,城市间有 n−1 条道路,且保证任意两座城市之间是连通的。每一座城市有一定数量的钻石。

蒜头君想在蒜国搜集钻石。他从城市 1 出发,每天他可以通过城市之间道路开车到另外的城市。当蒜头第一次到一个城市的时候,他可以搜集完这个城市的所有钻石,如果他后面再来到这个城市,就没有砖石可以收集了。

蒜头君只有 k 天时间,请你帮算蒜头君计算他最多可以搜集多少钻石。

num表示每个城市的钻石数量,mp表示城市所有的道路。

样例

样例 1:

输入: n=3,k=2,num=[3,8,3],mp=[[1,3],[3,2]]
输出: 14
解释:
他能得到所有的钻石

样例 2:

输入: n=6,k=2,num=[5,9,8,4,9,2],mp=[[1,6],[6,2],[2,5],[5,3],[5,4]]
输出: 16
解释:
他可以得到第1、2、6个城市中的钻石

注意事项

  • 1 leq n leq1001n100
  • 0 leq k leq2000k200
  • num[i] leq1000num[i]1000
  • 保证任意两座城市可以直接或间接到达

以上是关于动态规划-树上dp-1757. 搜集钻石的主要内容,如果未能解决你的问题,请参考以下文章

动态规划入门——动态规划与数据结构的结合,在树上做DP

dp uva12186树上的动态规划

动态规划-树形DP-树上背包专题

题解 bzoj4033: [HAOI2015]树上染色* (动态规划)

bzoj 4033 树上染色 - 树形动态规划

树形DP——动态规划与数据结构的结合,在树上做DP