POJ--3259 Wormholes (SPFA判负环)
题目电波 3259 Wormholes
#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
#include<stdio.h>
using namespace std;
#define maxn 100010
#define inf 0x3f3f3f3f
struct ac{
int to,va;
ac(){}
ac(int a,int b){
to=a,va=b;
}
};
vector<ac>q[maxn];
int dis[maxn],vis[maxn];
bool fa[maxn];
int n,m,s;
void init(){
;j<=maxn;j++) q[j].clear();
}
bool spfa(){
memset(vis,,sizeof(vis));
memset(fa,,sizeof(fa));
memset(dis,inf,sizeof(dis));
dis[]=;
queue<int>pq;
pq.push();
while(!pq.empty()){
int u=pq.front();
pq.pop();
fa[u]=;
;j<q[u].size();j++){
int v=q[u][j].to;
int va=q[u][j].va;
if(dis[v]>dis[u]+va){
dis[v]=dis[u]+va;
if(!fa[v]){
fa[v]=;
vis[v]++;
pq.push(v);
if(vis[v]>=n){
;
}
}
}
}
}
;
}
int main(){
int t;
cin>>t;
while(t--){
init();
cin>>n>>m>>s;
;j<m;j++){
int u,v,va;
scanf("%d%d%d",&u,&v,&va);
q[u].push_back(ac(v,va));
q[v].push_back(ac(u,va));
}
;j<s;j++){
int u,v,va;
scanf("%d%d%d",&u,&v,&va);
q[u].push_back(ac(v,-va));
}
if(spfa()){
cout<<"YES"<<endl;
}else{
cout<<"NO"<<endl;
}
}
}
POJ--3259 Wormholes (SPFA判负环)的更多相关文章
- POJ 3259 Wormholes(SPFA判负环)
题目链接:http://poj.org/problem?id=3259 题目大意是给你n个点,m条双向边,w条负权单向边.问你是否有负环(虫洞). 这个就是spfa判负环的模版题,中间的cnt数组就是 ...
- Wormholes POJ 3259(SPFA判负环)
Description While exploring his many farms, Farmer John has discovered a number of amazing wormholes ...
- POJ 3259 Wormholes (判负环)
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 46123 Accepted: 17033 Descripti ...
- POJ 3259 Wormholes ( SPFA判断负环 && 思维 )
题意 : 给出 N 个点,以及 M 条双向路,每一条路的权值代表你在这条路上到达终点需要那么时间,接下来给出 W 个虫洞,虫洞给出的形式为 A B C 代表能将你从 A 送到 B 点,并且回到 C 个 ...
- POJ 3259 Wormholes( bellmanFord判负环)
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 36425 Accepted: 13320 Descr ...
- poj 3621 二分+spfa判负环
http://poj.org/problem?id=3621 求一个环的{点权和}除以{边权和},使得那个环在所有环中{点权和}除以{边权和}最大. 0/1整数划分问题 令在一个环里,点权为v[i], ...
- [poj3259]Wormholes(spfa判负环)
题意:有向图判负环. 解题关键:spfa算法+hash判负圈. spfa判断负环:若一个点入队次数大于节点数,则存在负环. 两点间如果有最短路,那么每个结点最多经过一次,这条路不超过$n-1$条边. ...
- POJ 3259 Wormholes 最短路+负环
原题链接:http://poj.org/problem?id=3259 题意 有个很厉害的农民,它可以穿越虫洞去他的农场,当然他也可以通过道路,虫洞都是单向的,道路都是双向的,道路会花时间,虫洞会倒退 ...
- POJ3259 :Wormholes(SPFA判负环)
POJ3259 :Wormholes 时间限制:2000MS 内存限制:65536KByte 64位IO格式:%I64d & %I64u 描述 While exploring his many ...
- Poj 3259 Wormholes(spfa判负环)
Wormholes Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 42366 Accepted: 15560 传送门 Descr ...
随机推荐
- IdentityServer4【Introduction】之支持的规范
支持的规范 identityserver实现了下面的规范 OpenID Connect OpenID Connect Core 1.0 (spec) OpenID Connect Discovery ...
- springmvc通过HttpServletRequest进行参数传递
@RequestMapping("/itemEdit") public String itemEdit(HttpServletRequest request, Model mode ...
- Executor介绍
1.Executor介绍: Executor是mybatis的核心接口之一,其中定义了数据库操作的基本方法,它的子类结构图如下:这这张关系图中,涉及到了模板方法模式和装饰器模式.BaseExecuto ...
- mybatis事务管理机制详解
1.mybatis事务的配置和使用 mybatis事务有两种使用方式: (a):使用JDBC的事务管理机制:即使用java.Sql.Connection对象完成对事务的提交,回滚和关闭操作. (b): ...
- 怎样利用ADO中的adoquery进行缓存更新?????(100分)
我用BDE时,用query与updatesql相结合进行缓存更新,但是在ADO中没有updatesql,只有用adoquery,在DBGRID中,用CANCELUPADTE,只能取消一条记录,烦恼不已 ...
- Monkey脚本API简介
一.API简介 LaunchActivity(pkg_name, cl_name):启动应用的Activity.参数:包名和启动的Activity. Tap(x, y, tapDuration): 模 ...
- freemarker 设置中文
在web中添加一段代码 <servlet> <servlet-name>freemarker</servlet-name> <servlet-class> ...
- Python实现快速排序--数据结构
快速排序(Quick Sort) 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序n个元素要O(nlogn)次比较.在最坏状况下则需要O(n^2)次比较,但这种状况并不常见.事实上,快速 ...
- WebStorm开发React项目,修代码之后运行的项目不更新
昨天遇到一个恶心的问题,我新建了一个React.js项目,想做一点关于Pc端的开发,习惯性的用了WebStorm,可是发现一个问题,就是代码修改之后,浏览器上根本不会刷新.然后,我把方向定位在没有正确 ...
- 关于读取mapper的两种方式
第一种: 第二种: