Tyvj 1051 选课 树形dp
来源:互联网 发布:java 打war包 编辑:程序博客网 时间:2024/05/22 00:47
#include<cstdio>#include<cstring>#include<vector>#include<algorithm>using namespace std;const int N =310;int val[N];vector<int>g[N];int dp[N][N];void dfs(int rt,int m){if(m==0) {return;}for(int h=0;h<g[rt].size();h++){int u=g[rt][h];for(int i=0;i<=m;i++){dp[u][i]=dp[rt][i];}dfs(u,m-1);for(int i=m;i>=1;i--){dp[rt][i]=max(dp[rt][i],dp[u][i-1]+val[u]);}}}int main(){int n,m;while(scanf("%d%d",&n,&m)!=EOF){for(int i=0;i<=n;i++){g[i].clear();}int x;val[0]=0;for(int i=1;i<=n;i++){scanf("%d%d",&x,&val[i]);if(x==0) g[0].push_back(i);else g[x].push_back(i);}memset(dp,0,sizeof(dp));dfs(0,m);printf("%d\n",dp[0][m]);}return 0;}
0 0
- Tyvj 1051 选课 树形dp
- 【codevs1378】选课 树形DP
- 选课 树形DP
- 选课_ctsc1997_ssl1606_树形dp
- codevs1378 选课 树形dp
- 树形dp:选课
- codevs1378 选课-树形dp
- 选课(树形DP)
- TYVJ 1051 选课
- TYVJ 1051 选课
- tyvj-1052 树形DP
- [CODEVS1378]选课(树形dp)
- vijos P1180 选课 树形dp
- Vijos 1180 选课 [树形dp]
- 树形dp-洛谷 P2014 选课
- Codevs 1378 选课 树形DP
- 树形DP 洛谷P2014 选课
- bsoj 1660 选课(树形DP)
- 在排序数组中,找出给定数字的出现次数
- 常用类(包装类)的的介绍
- jquery $
- hdu 2187 悼念512汶川大地震遇难同胞——老人是真饿了
- Core Data
- Tyvj 1051 选课 树形dp
- 【程序31】 ArrayConverse.java 题目:将一个数组逆序输出。 。
- Tyvj 1052 没有上司的舞会 树形dp
- cocos2dx的AnchorPoint 有时候无效,很气愤
- Tyvj 1057 金明的预算方案 树形dp
- 【程序30】 ArraySort.java 题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
- virtual host & pureftp
- 在windows下用VMware虚拟机来安装linux
- 鸟哥的Linux私房菜 基础学习篇读书笔记(3): 主机规划和硬盘分区