POJ
来源:互联网 发布:淘宝规则适用者 编辑:程序博客网 时间:2024/06/17 19:33
///这个就是判断回路是否存在负环;///然后用一下佛洛依德就出来了;细节如下#include<cstdio>#include<cstring>using namespace std;int mmp[505][505],n,m,k;int floyd(){ int i,j,k; for(k=1;k<=n;k++) for(i=1;i<=n;i++) { for(j=1;j<=n;j++) if(mmp[i][j]>mmp[i][k]+mmp[k][j]) mmp[i][j]=mmp[i][k]+mmp[k][j];///调用函数超时,写的函数也是超时; if(mmp[i][i]<0)return 1; } return 0;}int main(){ int t; scanf("%d",&t); while(t--) { scanf("%d%d%d",&n,&m,&k); memset(mmp,0x3f3f3f3f,sizeof(mmp)); for(int i=1;i<=n;i++) mmp[i][i]=0; for(int i=1;i<=m;i++) { int a,b,c; scanf("%d %d %d",&a,&b,&c); if(c<mmp[a][b]) mmp[a][b]=mmp[b][a]=c; } for(int i=1;i<=k;i++) { int a,b,c; scanf("%d%d%d",&a,&b,&c); mmp[a][b]=-c; } int f=floyd(); if(!f)printf("NO\n"); else printf("YES\n"); } return 0;}
阅读全文
0 0
- POJ
- poj
- POJ
- POJ
- poj
- poj
- POJ
- POJ
- poj
- POJ
- POJ
- POJ
- POJ
- POJ
- POJ
- POJ
- POJ
- POJ
- 二叉排序树删除某一指定结点
- struct timespec 和 struct timeval
- 写一个函数返回参数二进制中 1 的个数
- unpipc.h
- 2017蓝盾杯初赛第二场writerup
- POJ
- find、xargs、grep基本用法
- ACM笔记
- ::在C++中是什么意思
- 计算两个坐标之间的距离公式
- 中国人写SCI最常犯的错误总结
- Centos7 下静态IP设置
- composer安装以及使用
- [NOIP] [状压DP] [记忆化搜索] NOIP2017Day2 宝藏