POJ 2983 Is the Information Reliable?(差分约束)
来源:互联网 发布:如何删掉淘宝评价图片 编辑:程序博客网 时间:2024/05/16 19:41
思路:从题目已知一些A和B的距离已知,那么就可以得d[A]-d[B]<=X && d[A]-d[B]>=X,并且有一些边只知道大小关系的就是d[A]-d[B]>=1,然后建图最短路就可以了
#include<iostream>#include<cstdio>#include<queue>#include<cstring>using namespace std;const int maxn = 1005;#define inf 1e9vector<pair<int,int> >e[maxn];int d[maxn],inq[maxn],cnt[maxn],n;int spfa(){ memset(cnt,0,sizeof(cnt));memset(inq,0,sizeof(inq));for(int i = 1;i<=n;i++)d[i]=inf; queue<int>q;q.push(0);d[0]=0;inq[0]=1;while(!q.empty()){int u = q.front(); q.pop();inq[u]=0;for(int i =0;i<e[u].size();i++){int v = e[u][i].first;if(d[v]>d[u]+e[u][i].second){d[v]=d[u]+e[u][i].second;if(!inq[v]){inq[v]=1;q.push(v);if(++cnt[v]>n)return false;}}}}return true;}int main(){int m; while(scanf("%d%d",&n,&m)!=EOF){for(int i = 0;i<=n;i++)e[i].clear(); for(int i =1;i<=m;i++){char s[10];int u,v;scanf("%s",s);if(s[0]=='P'){ int w;scanf("%d%d%d",&u,&v,&w); e[v].push_back(make_pair(u,w));e[u].push_back(make_pair(v,-w));}else if(s[0]=='V'){scanf("%d%d",&u,&v);e[u].push_back(make_pair(v,-1));}}for(int i = 1;i<=n;i++)e[0].push_back(make_pair(i,0));if(spfa())printf("Reliable\n");elseprintf("Unreliable\n");}}
0 0
- poj 2983 Is the Information Reliable?(差分约束)
- POJ 2983Is the Information Reliable? (差分约束)
- POJ 2983 Is the Information Reliable?(差分约束)
- POJ 2983 Is the Information Reliable?(差分约束)
- POJ 2983 Is the Information Reliable(差分约束系统)
- POJ--2983[Is the Information Reliable?] 差分约束
- poj 2983 差分约束Is the Information Reliable?
- POJ 2983 Is the Information Reliable? 依旧差分约束
- POJ 2983 Is the Information Reliable?(差分约束系统)
- poj 2983 Is the Information Reliable? 差分约束
- POJ-2983-Is the Information Reliable?(差分约束)
- poj 2983 Is the Information Reliable? 差分约束
- POJ 2983 Is the Information Reliable? 差分约束
- POJ 2983-Is the Information Reliable?(差分约束系统)
- POJ 2983 Is the Information Reliable? 差分约束系统
- poj-2983 Is the Information Reliable? 差分约束+判负环
- poj 2983 Is the Information Reliable?(差分约束)
- [POJ 2983]Is the Information Reliable?[差分约束]
- 实现垂直进度条
- 设计模式-----简单工厂
- poj-1198
- this和super的使用
- ural1057Amount of Degrees-数位dp
- POJ 2983 Is the Information Reliable?(差分约束)
- Matlab函数fir1(n,Wn)中的归一化频率的含义
- 注解三篇
- spring 注解方式配置定时任务
- MapReduce2.0架构
- 九九乘法表----java
- 数据库数据泵导出之前的完美数据量统计
- 数据库的扩容
- java双端链表