poj 3268(spfa)
http://poj.org/problem?id=3268
对于这道题,我想说的就是日了狗了,什么鬼,定义的一个数值的前后顺序不同,一个就TLE,一个就A,还16MS。
感觉人生观都奔溃了,果然,题目做多了总会见到鬼的!!!!!!
心累,不想写这个题了。
#include <stdio.h>
#include <string.h>
#include <queue>
#include <iostream>
#define inf 0x3f
#define Max1 1010
#define Max2 100010 using namespace std;
int m,n,x;
int mark[Max1];
int next[Max1];
int u[Max2]; //把13和14行交换一下,你得到了结果会完全不同。。
int v[Max2];
int w[Max2];
int a[Max2],b[Max2],c[Max2];
int dist[Max1];
int ans[Max1];
bool vis[Max1]; queue <int >s;
void init()
{
memset( vis,false,sizeof(vis));
while( !s.empty()) s.pop();
memset(dist,inf,sizeof( dist ));
dist[x]=;
for(int i=;i<=n;i++)
mark[i]=-;
} void spfa()
{
s.push( x );
vis[ x ] = true ;
while( !s.empty() )
{
int tmp = s.front();
s.pop();
vis[ tmp ] = false;
for(int i = mark[ tmp ] ; i != - ; i = next[ i ] )
{
if( dist[ tmp ] + w[ i ] < dist[ v[ i ] ])
{
dist[ v[ i ] ] = dist[ tmp ] + w[ i ];
if( !vis[ v[ i ] ] )
{
s.push( v[ i ] );
vis[ v[ i ] ] = true;
}
}
}
}
for( int i = ; i <= n ; i++ )
ans[ i ] += dist[ i ];
} int main()
{
// freopen("in.txt","r",stdin);
while(~scanf("%d%d%d",&n,&m,&x))
{
memset( ans , , sizeof( ans ) );
init();
for( int i = ; i <= m ; i++ )
{
scanf( "%d%d%d",&a[ i ],&b[ i ],&c[ i ] );
u[ i ] = a[ i ];
v[ i ] = b[ i ];
w[ i ] = c[ i ];
next[ i ] = mark [ u[ i ] ] ;
mark[ u[ i ] ] = i;
}
spfa();
init();
for( int i = ; i <= m ; i++ )
{
v[ i ] = a[ i ];
u[ i ] = b[ i ];
w[ i ] = c[ i ];
next[ i ] = mark[ u[ i ] ];
mark[ u[ i ] ] = i;
}
spfa();
int Max = ans[];
for( int i = ; i <= n ; i++ )
if( ans[ i ] > Max ) Max = ans[ i ];
printf("%d\n",Max);
}
return ;
}
poj 3268(spfa)的更多相关文章
- DIjkstra(反向边) POJ 3268 Silver Cow Party || POJ 1511 Invitation Cards
题目传送门 1 2 题意:有向图,所有点先走到x点,在从x点返回,问其中最大的某点最短路程 分析:对图正反都跑一次最短路,开两个数组记录x到其余点的距离,这样就能求出来的最短路以及回去的最短路. PO ...
- POJ 3268 Silver Cow Party (最短路径)
POJ 3268 Silver Cow Party (最短路径) Description One cow from each of N farms (1 ≤ N ≤ 1000) convenientl ...
- POJ 3268——Silver Cow Party——————【最短路、Dijkstra、反向建图】
Silver Cow Party Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Su ...
- POJ 3268 Silver Cow Party 最短路—dijkstra算法的优化。
POJ 3268 Silver Cow Party Description One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbe ...
- 图论 ---- spfa + 链式向前星 ---- poj 3268 : Silver Cow Party
Silver Cow Party Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 12674 Accepted: 5651 ...
- POJ - 3268 Silver Cow Party SPFA+SLF优化 单源起点终点最短路
Silver Cow Party One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to ...
- POJ 3268 Dijkstra+priority_queue或SPFA
思路:正向建边,一遍Dijkstra,反向建边,再一遍Dijkstra.ans加在一起输出最大值. (SPFA也行--) // by SiriusRen #include <queue> ...
- Poj(2679),SPFA,邻接表(主流写法)
题目链接:http://poj.org/problem?id=3268 题意: 有编号为1-N的牛,它们之间存在一些单向的路径.给定一头牛的编号,其他牛要去拜访它并且拜访完之后要返回自己原来的位置,求 ...
- POJ 3268 Silver Cow Party 最短路
原题链接:http://poj.org/problem?id=3268 Silver Cow Party Time Limit: 2000MS Memory Limit: 65536K Total ...
随机推荐
- 使用Lucene开发自己的搜索引擎
1.下载Lucene开发包,请到:http://lucene.apache.org/ 2.在myeclipse环境部署该开发包: 3.代码编写: package Lucene; import java ...
- Sqlserver2008 表分区教程
先声明..Sql2008只有企业版才能够搞这个表分区.其他版本请自觉更改.. 哥在这里费了很长时间劲..结果还是老老实实的重装.. 表分区定义 一般情况下,我们建立数据库表时,表数据都存放在一个文件里 ...
- C#List的排序和简单去重总结
List集合在开发过程中很常见,经常我们要对该集合进行一系列操作,本文介绍如何将该集合内的元素进行排序,博主制作简单WinForm应用程序进行演示. 首先,我们来看一下c#泛型List提供的Sort方 ...
- linux命令--nslookup
nslookup和dig都是非常有用的网络命令,简单而言,就是查dns信息用的. 本地的dns配置文件在哪里? 文件是:/etc/resolv.conf 打开这个文件:vi /etc/resolv.c ...
- Java中Office(word/ppt/excel)转换成HTML实现
运行条件:JDK + jacob.jar + jacob.dll 1) 把jacob.dll在 JAVA_HOME\bin\ 和 JAVA_HOME\jre\bin\ 以及C:\WINDOWS\sys ...
- HTML5音乐播放器(最新升级改造加强版)
最近么,单位里面么老不顺心的,公司一直催要程序员要PHP,然后本宅好不容易推荐了一个,我日嘞,最后待遇变成1.3,吾师最后也同意1.3W,然后还说要考虑... 尼玛,4年多5年不到一点的工作经验,前端 ...
- MainData仿Backbone Model式 数据模型记录器
MainData仿Backbone Model式 数据模型记录器主要思想:将 数据记录处理 和 因为数据变化而产生的页面渲染 两者解耦, 让页面元素可以与数据进行关联绑定,杜绝因为遗忘或是逻辑复杂导致 ...
- SqlServer代理执行[分发清除: distribution] 无法删除快照文件
每天偶尔检查数据库作业是否失败,发现有错误 select top 10 job_id,run_date,run_time,run_duration,step_name,message from ms ...
- 【MongoDB】MongoDb的“not master and slaveok=false”错误及解决方法
链接mongodb报错如下 2016-03-14T16:26:00.912+0800 E QUERY [thread1] Error: listDatabases failed:{ "ok& ...
- 微信封号浪潮再起 A货假代购还能在朋友圈泛滥多久?
你的微信朋友圈是不是很活跃?是不是被很多所谓的名品所包围?没错,这些很多都是A货或假代购的伎俩.如果xmyanke的微信朋友圈出现这些东东,我就会直接屏蔽他的朋友圈权限.具体方法是:打开他的微信详细资 ...