摘要:
题目链接题意:给你一棵树,各个节点都有价值(除根节点),从根节点出发,选择m个节点,问最多的价值是多小。思路:很明显是树状dp,遍历树时背包最优价值,dp[i][k]=max{dp[i][r]+dp[son[i]][k-r]}#include #include#includeusing namespace std; #define MAXN 250struct node{ int from,to,next;}edge[MAXN];int tot,head[MAXN],visit[MAXN],value[MAXN],dp[MAXN][MAXN],f[MAXN][MAXN];int n,m;voi 阅读全文