POJ3259 Wormholes 【Bellmanford推断是否存在负回路】
版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/u011775691/article/details/27612757
非常easy的bellmanford题目。这里比較具体:http://blog.csdn.net/lyy289065406/article/details/6645790
直接代码
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cmath>
using namespace std;
const int SIZE=11111;
const int MAXLEN=1<<30;
struct sss
{
int s,e,v;
}ed[SIZE];
int N,M,WH;
int dis[SIZE];
int ednum;
bool Bellman()
{
for(int i=0;i<N-1;i++)
{
bool flag=false;
for(int j=0;j<ednum;j++)
{
if(dis[ed[j].e]>dis[ed[j].s]+ed[j].v)
{
flag=true;
dis[ed[j].e]=dis[ed[j].s]+ed[j].v;
}
}
if(!flag)
break;
}
for(int j=0;j<ednum;j++)
{
if(dis[ed[j].e]>dis[ed[j].s]+ed[j].v)
{
return true;
}
}
return false;
}
int main()
{
#ifndef ONLINE_JUDGE
freopen("G:/1.txt","r",stdin);
freopen("G:/2.txt","w",stdout);
#endif
int f,u,v,w;
cin>>f;
while(f--)
{
ednum=0;
cin>>N>>M>>WH;
for(int i=0;i<SIZE;i++)
{
dis[i]=MAXLEN;
}
for(int i=0;i<M;i++)
{
cin>>u>>v>>w;
ed[ednum].s=u;
ed[ednum].e=v;
ed[ednum++].v=v;
ed[ednum].e=u;
ed[ednum].s=v;
ed[ednum++].v=w;
}
for(int i=0;i<WH;i++)
{
cin>>u>>v>>w;
ed[ednum].s=u;
ed[ednum].e=v;
ed[ednum++].v=-w;
}
if(Bellman())
printf("YES\n");
else
printf("NO\n");
}
return 0;
}
POJ3259 Wormholes 【Bellmanford推断是否存在负回路】的更多相关文章
- poj-3259 Wormholes(无向、负权、最短路之负环判断)
http://poj.org/problem?id=3259 Description While exploring his many farms, Farmer John has discovere ...
- POJ3259——Wormholes(Bellman-Ford+SPFA)
Wormholes DescriptionWhile exploring his many farms, Farmer John has discovered a number of amazing ...
- POJ No 3259 Wormholes Bellman-Ford 判断是否存在负图
题目:http://poj.org/problem?id=3259 题意:主要就是构造图, 然后判断,是否存在负图,可以回到原点 /* 2 3 3 1 //N, M, W 1 2 2 1 3 4 2 ...
- poj3259 Wormholes【Bellman-Ford或 SPFA判断是否有负环 】
题目链接:poj3259 Wormholes 题意:虫洞问题,有n个点,m条边为双向,还有w个虫洞(虫洞为单向,并且通过时间为倒流,即为负数),问你从任意某点走,能否穿越到之前. 贴个SPFA代码: ...
- POJ3259 :Wormholes(SPFA判负环)
POJ3259 :Wormholes 时间限制:2000MS 内存限制:65536KByte 64位IO格式:%I64d & %I64u 描述 While exploring his many ...
- POJ3259Wormholes(判断是否存在负回路)
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 38300 Accepted: 14095 Descr ...
- uva558 Wormholes SPFA 求是否存在负环
J - Wormholes Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submit Stat ...
- POJ 3259 Wormholes(最短路径,求负环)
POJ 3259 Wormholes(最短路径,求负环) Description While exploring his many farms, Farmer John has discovered ...
- Bellman-Ford(可解决负权边)--时间复杂度优化
Bellman-Ford 可解决带有负权边的最短路问题 解决负权边和Dijkstra相比是一个优点,Bellman-Ford的核心代码只有4行:: u[],v[],w[] 分别存一条边的顶点.权值,d ...
随机推荐
- zw版【转发·台湾nvp系列Delphi例程】HALCON SqrtImage
zw版[转发·台湾nvp系列Delphi例程]HALCON SqrtImageHALCON SqrtImage 範例 (RAD Studio XE Delphi x64) zw版[转发·台湾nvp系列 ...
- [one day one question] 部分ios版本 在display: inline-block时候不支持flex
问题描述: 部分ios 在display: inline-block时候不支持flex,这怎么破? 解决方案: so easy,不要使用display: inline-block;就行啦 君生我未生, ...
- Linux学习笔记之Linux启动级别
对于绝大多数Linux程序员来说,进入Linux系统后一般看到的是黑乎乎的界面(开发模式),因为系统如果启动选择开发模式,会减少启动时间,优化内存等.但是通常我们刚安装完Linux系统,然后进去以后是 ...
- linux及安全第七周总结——20135227黄晓妍
实验部分 首先clone最新的menu 我们可以看到,test.c里多了一个exec的功能,它的代码和fork基本一致,多了一项加载hello rootfs也有一些变化 执行一下exec 让我们启动一 ...
- linux及安全第五周总结——20135227黄晓妍
(注意:本文总结备份中有较多我手写笔记的图片,其中重要的部分打出来了.本文对分析system_call对应的汇编代码的工作过程,系统调用处理过程”的理解,以及流程图都写在实验部分.) 实验部分 使用g ...
- 2018-2019-1 20189215 《Linux内核原理与分析》第七周作业
<庖丁解牛>第六章书本知识总结 操作系统内个实现操作系统的三大管理功能:进程管理.内存管理.文件系统.分别对应<操作系统原理>中最重要的3个抽象概念是进程.虚拟内存和文件. L ...
- 20145326 《Java程序设计》第5周学习总结
20145326 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 一.语法与继承结构 1.使用try .catch 我们编写程序时总有些由意想不到的状况而引发的错误,java ...
- 各版本的区别及含义(i386 、x86_64 、ppc )
1.i386:是指兼容Intel 80386处理器 x86或80x86是英代爾Intel首先开发制造的一种微处理器体系结构的泛称.該系列較早期的處理器名稱是以數字來表示,並以“86”作為結尾, ...
- RC522 模块驱动程序
本文主要讲述了基于SPI总线的RC522驱动程序的设计.描述了主控如何与从设备通过SPI总线进行数据的读写. 一 在SPI驱动中,有两个重要的结构:spi_device&spi_driver. ...
- POJ 2699 The Maximum Number of Strong Kings (最大流+枚举)
http://poj.org/problem?id=2699 题意: 一场联赛可以表示成一个完全图,点表示参赛选手,任意两点u, v之间有且仅有一条有向边(u, v)或( v, u),表示u打败v或v ...