hdu 1531 King
来源:互联网 发布:软件商业计划书模板 编辑:程序博客网 时间:2024/05/22 15:13
差分约束的应用,用最长路可求,可添加超级源点。
#include<stdio.h>#include<iostream>#include<algorithm>#include<string.h>#include<vector>#include<queue>using namespace std;int s[105];struct pi{ int no; int to; int cost; int next;}pp[10005];int head[105];int dis[105];char c[3];int tot;int vis[105];int flag;queue<int >q;void add(int a,int b,int cost){ pp[tot].no=a; pp[tot].to=b; pp[tot].cost=cost; pp[tot].next=head[a]; head[a]=tot++;}void spfa(int n){ int i,k,s=0; while(!q.empty()) q.pop(); q.push(n+1); while(!q.empty()) { k=q.front(); vis[k]=0; q.pop(); for(i=head[k];i!=-1;i=pp[i].next){ if(dis[pp[i].to]<dis[k]+pp[i].cost){ dis[pp[i].to]=dis[k]+pp[i].cost; if(!vis[pp[i].to]){ q.push(pp[i].to); vis[pp[i].to]=1; s++; } } } if(s>2*n*n){ flag=1; return ; } } return ;}int main(){ int i,j,n,m,p,t,mm; while(cin>>n) { if(!n) break; cin>>m; memset(head,-1,sizeof(head)); tot=0;mm=0; for(i=0;i<m;i++) { scanf("%d%d%s%d",&p,&t,c,&j); if(c[0]=='g') { j++; add(p-1,t+p,j); } else { j--; add(p+t,p-1,-j); } if(mm<p+t) mm=p+t; } if(mm>n) { printf("successful conspiracy\n"); continue; } for(i=0;i<=n;i++) dis[i]=-0x3f; memset(vis,0,sizeof(vis)); for(i=0;i<=n;i++) { add(n+1,i,0); } dis[n+1]=0; flag=0; spfa(n); if(flag){ printf("successful conspiracy\n"); } else{ printf("lamentable kingdom\n"); } } return 0;}
0 0
- hdu 1531 King
- HDU 1531 King
- POJ-1364/HDU 1531 King
- HDU 1531 King 差分约束
- 【HDU】1531 King 差分约束
- HDU 1531 King (差分约束)
- |hdu 1531|差分约束|King
- hdu 1512 Monkey King
- 【HDU 1512】Monkey King
- hdu-5314 Happy King
- hdu 1512 Monkey King
- hdu----King's Phone
- HDU 1512 Monkey King
- HDU 1512 Monkey King
- HDU-1512-Monkey King
- King of Destruction HDU
- Hdu 1531 King 差分约束 解题报告
- HDU Monkey King(左偏树)
- java.lang.UnsatisfiedLinkError解决方法汇集
- andorid常见需求修改
- 【MySQL笔记】mysql源码安装/配置步骤及支持中文gbk/gb2312编码的配置方法
- 【Yii】YII执行流程
- 《C和指针》——C语言补漏(基本用法篇)
- hdu 1531 King
- 字符串转数字atoi的重新编写及注意事项
- 使用JavaPns向APNs推送通知
- leetcode第一刷_Merge k Sorted Lists
- Plus One
- 【Yii】组件和事件行为管理
- hdu 1384 Intervals
- jFreeChart展示柱状图
- 通过ArcCatalog发布服务时出错