poj3249 Test for job 【图的DAG dp】
来源:互联网 发布:快披软件 编辑:程序博客网 时间:2024/04/27 20:34
#include <cstdio>#include <cstdlib>#include <iostream>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>using namespace std;const int MAX=111111;int N,E;int v[MAX];const int MINF=-210000000;int in[MAX],out[MAX];int dp[MAX];vector<int>g[MAX];void tuopu(){stack<int>s;for(int i=1;i<=N;i++){if(in[i]==0)s.push(i);}int tmp=N;while(tmp--){int now=s.top();s.pop();for(int i=0;i<g[now].size();i++){dp[g[now][i]]=max(dp[g[now][i]],dp[now]+v[g[now][i]]);in[g[now][i]]--;if(!in[g[now][i]])s.push(g[now][i]);}}}int main(){#ifndef ONLINE_JUDGEfreopen("G:/1.txt","r",stdin);freopen("G:/2.txt","w",stdout);#endifwhile(scanf("%d%d",&N,&E)!=EOF) { for(int i=1;i<=N;i++) { scanf("%d",&v[i]); } for(int i=1;i<=E;i++) { int x,y; scanf("%d%d",&x,&y); out[x]++; in[y]++; g[x].push_back(y); } for(int i=1;i<=N;i++) { if(in[i]==0) dp[i]=v[i]; else dp[i]=MINF; } tuopu(); int maxn=MINF; for(int i=1;i<=N;i++) { if(out[i]==0) maxn=max(maxn,dp[i]); } printf("%d\n",maxn); for(int i=1;i<=N;i++) { g[i].clear(); } memset(v,0,sizeof(int)*N); memset(in,0,sizeof(int)*N); memset(out,0,sizeof(int)*N); memset(dp,0,sizeof(int)*N); }return 0;}
0 0
- poj3249 Test for job 【图的DAG dp】
- POJ3249 Test for Job(拓扑排序+dp)
- POJ3249 Test for Job 【DAG】+【记忆化搜索】
- [poj3249]Test For Job
- POJ3249 Test for Job
- POJ3249 Test for Job(记忆化搜索)
- poj3249 Test for Job --- 拓扑排序
- Test for Job(poj3249 拓扑+动态规划)
- poj3249(记忆化搜索)Test for Job
- POJ 3249 Test for Job(DAG上的dp + 记忆化搜索)
- POJ 3249 Test for Job (DAG图上的单源最短路径) 最详细的图解
- POJ 3249 Test for Job DAG图上的单源最短路径
- POJ 3249 Test for Job【DAG图上的最短路问题】
- POJ - 3249 Test for Job (DAG+topsort)
- POJ 3249 Test for Job DAG图单源最短路
- POJ 3249 Test for Job 拓扑图DP
- poj 3249 Test for Job (DP)
- poj--3249 Test for Job(topsort + dp)
- 让我们远离Mysql死锁
- Struts2中的OGNL详解
- 修改文件名
- iOS中常用的第三方类库
- getLocationInWindow 和 getLocationOnScreen 区别
- poj3249 Test for job 【图的DAG dp】
- C++性能优化技术导论
- ln,文件映射,链接
- java 深clone和浅clone
- JDBC简介及数据源配置
- php采用curl访问域名返回405
- ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
- poj 3258 River Hopscotch 【二分】
- sql语句多表查询