题意:有n个人,接下来n行是n个人的价值,再接下来n行给出l,k说的是l的上司是k,这里注意l与k是不能同时出现的

链接:点我

dp[i][1] += dp[j][0],

dp[i][0] += max{dp[j][0],dp[j][1]};其中j为i的孩子节点。

第二次做感觉已经很水了

 #include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<queue>
#include<map>
using namespace std;
#define MOD 1000000007
const int INF=0x3f3f3f3f;
const double eps=1e-;
typedef long long ll;
#define cl(a) memset(a,0,sizeof(a))
#define ts printf("*****\n");
const int MAXN=;
int n,m,tt;
int aa[MAXN];
int tot,head[MAXN],dp[MAXN][],in[MAXN];
struct Edge
{
int to,next;
}edge[MAXN];
void addedge(int u,int v)
{
edge[tot].to=v;
edge[tot].next=head[u];
head[u]=tot++;
}
int dfs(int u)
{
for(int i=head[u];i!=-;i=edge[i].next)
{
int v=edge[i].to;
dfs(v);
dp[u][]+=dp[v][];
dp[u][]+=max(dp[v][],dp[v][]);
}
return max(dp[u][],dp[u][]);
}
void init()
{
tot=;
memset(head,-,sizeof(head));
cl(dp);
cl(in);
}
int main()
{
int i,j,k;
#ifndef ONLINE_JUDGE
freopen("1.in","r",stdin);
#endif
while(scanf("%d",&n)!=EOF)
{
init();
for(i=;i<=n;i++)
scanf("%d",&dp[i][]);
int a,b;
while(scanf("%d%d",&a,&b))
{
if(a==&&b==)break;
addedge(b,a);
in[a]++;
}
int ans=;
for(i=;i<=n;i++) //题目的意思就一棵树
{
if(!in[i]) ans=dfs(i);
}
printf("%d\n",ans);
}
}

最新文章

  1. Android导包导致java.lang.NoClassDefFoundError
  2. Java Web学习笔记3
  3. PHP 表单
  4. jenkins配置邮件
  5. 【转】查看java类是从哪个包加载
  6. Linux下调试程序方法
  7. Linux文件系统应用---系统数据备份和迁移(用户角度)
  8. Apache shutdown unexpectedly启动错误解决方法
  9. poj 1611:The Suspects(并查集,经典题)
  10. Spring框架下的 “接口调用、MVC请求” 调用参数、返回值、耗时信息输出
  11. Atitit.&#160;Atiposter&#160;发帖机&#160;新特性&#160;poster&#160;new&#160;feature&#160;&#160;&#160;v7&#160;q39
  12. UVA 439 Knight Moves
  13. vim 设置 swap file, 防止 同一个文件同时被多次打开,而且有恢复的功效
  14. 圣诞福利到!51Testing邀你一起来狂欢!有礼就是任性~(≧▽≦)/~
  15. webform中listbox运用,2个相互传值练习1:
  16. 安卓BLE测试apk
  17. L - Tic-Tac-Toe FZU - 2283 (思维)
  18. ubuntu cron 及 crontab 自动执行任务
  19. 11g新特性-自动sql调优(Automatic SQL Tuning)
  20. Css预处理器---Less(三)

热门文章

  1. css各种姿势的水平居中
  2. MOD - Power Modulo Inverted(SPOJ3105) + Clever Y(POJ3243) + Hard Equation (Gym 101853G ) + EXBSGS
  3. Axure RP 授权码
  4. 福建工程学院寒假作业第一周F题
  5. pycharts实现可视化
  6. 南邮PHP反序列化
  7. netif_start_queue/netif_wake_queue/netif_stop_queue
  8. go语言入门(一)
  9. Windows Phone 8/Windows 8 启动第三方应用程序并传递参数
  10. js写一个插件