poj 1201 Intervals 差分约束+spfa
来源:互联网 发布:dk哲学百科知乎 编辑:程序博客网 时间:2024/04/28 05:45
利用相互关系进行约束,求最长路
/*author:jxylang:C/C++university:China,Xidian University**If you need to reprint,please indicate the source***/#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <queue>#define INF 1E9using namespace std;struct edge{ int len,nn;};int ss,ee,dis[50005];queue<int> q;bool in[50005];vector<edge> map[50005];int spfa(){ int i,now,k,next,t; while(!q.empty())q.pop(); memset(in,0,sizeof(in)); for(i=ss; i<=ee; i++) dis[i]=-INF; in[ss]=1; dis[ss]=0; q.push(ss); while(!q.empty()) { now=q.front(); q.pop(); in[now]=0; k=map[now].size(); for(i=0; i<k; i++) { next=map[now][i].nn; if(dis[next]>=(t=dis[now]+map[now][i].len))continue; dis[next]=t; if(in[next])continue; q.push(next); in[next]=1; } } return dis[ee];}int main(){ int i,n,a,b,c; edge temp; while(~scanf("%d",&n)) { for(i=0; i<50005; i++)map[i].clear(); ss=INF; ee=-1; while(n--) { scanf("%d%d%d",&a,&b,&c); b++; if(a<ss)ss=a; if(b>ee)ee=b; temp.len=c; temp.nn=b; map[a].push_back(temp); } for(i=ss; i<=ee; i++) { temp.len=0; temp.nn=i+1; map[i].push_back(temp); temp.len=-1; temp.nn=i; map[i+1].push_back(temp); } printf("%d\n",spfa()); } return 0;}
- POJ 1201 Intervals 差分约束+spfa
- poj 1201 Intervals 差分约束 + spfa
- poj 1201 Intervals 差分约束+spfa
- poj 1201 Intervals(最短路+spfa+差分约束系统)
- POJ 1201 Intervals(差分约束-Spfa)
- POJ 1201/hdu 1384 Intervals【差分约束+SPFA】
- 【POJ 1201】Intervals(差分约束+SPFA)
- POJ 1716 Integer Intervals SPFA 差分约束
- POJ 1716 Integer Intervals【差分约束+SPFA】
- poj 1201 Intervals(差分约束)
- POJ 1201 Intervals [差分约束]
- POJ 1201 Intervals(差分约束)
- POJ 1201 Intervals 差分约束系统
- POJ 1201 Intervals (差分约束)
- POJ 1201 Intervals (差分约束)
- poj-1201- Intervals-差分约束问题
- POJ 1201 Intervals 差分约束系统
- poj 1201 Intervals (差分约束)
- 数据管理质量怎样衡量
- JSP门户--JetSpeed介绍
- texmaker 中注释快捷键
- 很好的linux下GPIO驱动详解文章
- 黑马程序员——多线程
- poj 1201 Intervals 差分约束+spfa
- hdu3037Saving Beans lucas定理
- linux的全局快捷键
- 高效的浮点数相等判定
- 智能中文分词小程序
- 17家中国初创公司的失败史
- GWT开发 - 创建GWT Maven Project
- spi总线的mmc卡驱动调试总结
- XMLHttpRequest Level 2 使用指南