POJ3259
来源:互联网 发布:淘宝海外直邮要身份证 编辑:程序博客网 时间:2024/05/16 23:58
#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
struct Edge
{
int a;
int b;
int t;
}e[2500*2 + 1000];
int res[2500 + 10];
bool ballman(Edge *ed, int * res,int n, int num, int s)
{
for( int i = 1; i<= n; i++)
res[i] = 0x3f3f;
res[s] = 0;
for( int i = 1; i<= n; i++)
{
for( int j = 1; j <= num; j++)
{
if(res[e[j].b] > res[e[j].a] + e[j].t)
res[e[j].b] = res[e[j].a] + e[j].t;
}
}
for( int i = 1; i<= n; i++)
{
for( int j = 1; j<= num; j++)
{
if(res[e[j].b] > res[e[j].a] + e[j].t)
return true;
}
}
return false;
}
int main()
{
int f,n,m,s,ed,tt,w;
int j, i;
scanf("%d",&f);
while(f--)
{
scanf("%d %d %d",&n, &m, &w);
for( i = 1; i<=m; i++)
{
scanf("%d %d %d", &s, &ed, &tt);
e[i].a = s;
e[i].b = ed;
e[i].t = tt;
e[m+i].a = ed;
e[m+i].b = s;
e[m+i].t = tt;
}
for( i = 1; i <= w; i++)
{
scanf("%d %d %d",&s, &ed, &tt);
e[m+m+i].a = s; e[m+m+i].b = ed; e[m+m+i].t = -tt;
}
if(ballman(e, res, n, 2*m + w, 1))
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}
#include <stdio.h>
#include <string.h>
using namespace std;
struct Edge
{
int a;
int b;
int t;
}e[2500*2 + 1000];
int res[2500 + 10];
bool ballman(Edge *ed, int * res,int n, int num, int s)
{
for( int i = 1; i<= n; i++)
res[i] = 0x3f3f;
res[s] = 0;
for( int i = 1; i<= n; i++)
{
for( int j = 1; j <= num; j++)
{
if(res[e[j].b] > res[e[j].a] + e[j].t)
res[e[j].b] = res[e[j].a] + e[j].t;
}
}
for( int i = 1; i<= n; i++)
{
for( int j = 1; j<= num; j++)
{
if(res[e[j].b] > res[e[j].a] + e[j].t)
return true;
}
}
return false;
}
int main()
{
int f,n,m,s,ed,tt,w;
int j, i;
scanf("%d",&f);
while(f--)
{
scanf("%d %d %d",&n, &m, &w);
for( i = 1; i<=m; i++)
{
scanf("%d %d %d", &s, &ed, &tt);
e[i].a = s;
e[i].b = ed;
e[i].t = tt;
e[m+i].a = ed;
e[m+i].b = s;
e[m+i].t = tt;
}
for( i = 1; i <= w; i++)
{
scanf("%d %d %d",&s, &ed, &tt);
e[m+m+i].a = s; e[m+m+i].b = ed; e[m+m+i].t = -tt;
}
if(ballman(e, res, n, 2*m + w, 1))
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}
0 0
- poj3259
- POJ3259
- poj3259
- poj3259
- poj3259
- poj3259
- poj3259
- poj3259
- poj3259
- POJ3259
- POJ3259
- poj3259
- POJ3259
- poj3259
- poj3259
- poj3259
- POJ3259
- POJ3259
- 常见渗透端口
- SQL优化规则
- RubyOnRails开发知识链接汇总
- HDU 3986 Harry Potter and the Final Battle(Dijkstra)
- SGU 537 Divisibility 枚举
- POJ3259
- Java写人机猜拳游戏(可扩展其他游戏或其他参与者)
- 福建省队集训被虐记——DAY4
- 基于Go的D-Bus框架(一)
- FZU 2146 Easy Game
- Openfire 的安装和配置
- POJ3080
- activemq 消息队列 技术的介绍和原理
- C语言实现 hanio问题