cf 682 C (树形dp)
来源:互联网 发布:东软his 数据库表结构 编辑:程序博客网 时间:2024/05/21 21:01
链接:http://codeforces.com/problemset/problem/682/C
dp[v]表示以v为终点所需消耗的最大值 当d[v]大于a[v]时就删除以v为根节点的子树
#include <bits/stdc++.h>using namespace std;#define ll long longconst int N=1e5+5;vector<pair<int,int> >G[N];ll n,a[N],dp[N],flag[N];void dfs(int u){ flag[u]=1; for(int i=0;i<G[u].size();i++) { ll v=G[u][i].first; ll len=G[u][i].second; dp[v]=dp[u]+len; if(dp[v]<0)dp[v]=0; if(dp[v]<=a[v]) dfs(v); }}int main(){ scanf("%I64d",&n); for(int i=1;i<=n;i++) scanf("%I64d",a+i); for(int i=2;i<=n;i++) { int u,len; scanf("%d%d",&u,&len); G[u].push_back({i,len}); } dfs(1); int cnt=0; for(int i=1;i<=n;i++) if(flag[i]) cnt++; printf("%d\n",n-cnt); return 0;}
0 0
- cf 682 C (树形dp)
- 树形dp(Centroids,cf 708C)
- CF 708C. Centroids 树形dp
- 【CF 736C】Ostap and Tree,树形DP
- cf 815C Karen and Supermarket 树形dp
- CF 855C. Helga Hufflepuff's Cup【树形DP】
- CF 219D 树形dp
- CF 581F 树形dp
- CF - 274B 树形dp
- CF - 461B 树形dp
- CF 165C dp
- CF - 505C DP
- CF - 255C DP
- CF 196 Div 2 D (树形dp)
- 树形DP入门题 cf 161D
- CF 581F Contest Page 树形DP
- CF 533 B. Work Group 树形dp
- CF Bear and Tree Jumps树形DP
- 序列化和传输大型数据流
- leetcode题解日练--2016.7.15
- Java中字符串的比较==,equals()方法
- 关于TSVM的一些学习资料
- Intent 显示与隐式
- cf 682 C (树形dp)
- RxJava学习笔记
- 15 链表中倒数第K个节点
- Eclipse中SVN过滤指定文件夹或文件下内容
- c++遍历文件夹
- weak references的个人理解
- kali弱点分析工具之DBPwAudit
- 剑指offer之一个数的N次方
- 多态