HDU 1520
来源:互联网 发布:在线起名字软件 编辑:程序博客网 时间:2024/06/05 21:15
#include<stdio.h>#include<stdlib.h>#include<algorithm>#include<math.h>#include<string.h>using namespace std;const int MAXN=20000+5;struct node{ int v; int next;}tree[MAXN];int vis[MAXN],head[MAXN],dp[MAXN][2];int ptr,n;void init(){ ptr=0; memset(dp,0,sizeof(dp)); memset(vis,0,sizeof(vis)); memset(head,-1,sizeof(head));}void addedge(int x,int y)//y is x's son{ tree[ptr]=(node){y,head[x]}; head[x]=ptr++;}void dfs(int cur){ vis[cur]=1; for(int i=head[cur];i!=-1;i=tree[i].next) { int v=tree[i].v; if(!vis[v]) { dfs(v); dp[cur][1]+=dp[v][0]; dp[cur][0]+=max(dp[v][1],dp[v][0]); } }}int main(){ int n,a,b; while(scanf("%d",&n)!=EOF) { init(); for(int i=1;i<=n;i++) scanf("%d",&dp[i][1]); while(scanf("%d%d",&a,&b),a+b) { addedge(a,b); addedge(b,a); } dfs(1); printf("%d\n",max(dp[1][0],dp[1][1])); } return 0;}
0 0
- HDU 1520
- HDU 1520
- hdu 1520
- HDU 1520
- HDU 1520
- hdu 1520
- HDU 1520
- 【hdu 1520】
- HDU 1520 Anniversary party
- 【树形DP】hdu 1520
- hdu 1520 树状 dp
- HDU-1520-Anniversary party
- hdu 1520 树型DP
- HDU-1520-Anniversary party
- HDU 1520(Anniversary party)
- HDU 1520 Anniversary party
- hdu 1520 Anniversary party
- hdu 1520-树形DP
- rapidjson 读取文件
- C#控制台基础 MD5的命名空间
- JS:offsetWidth\offsetleft 等图文解释
- opengl 学习第一天
- C#控制台基础 MD5加密(32位)将打印结果控制台
- HDU 1520
- [zynq] 理解xilinx的petalinux
- Hadoop生态圈概要
- 跳表SkipList
- 网易笔试题:合唱团
- Java制作证书工具keytool的总结
- 指针函数和函数指针
- day14_python Css
- 【科普杂谈】车用红外模块