题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2066
一个人的旅行
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 24385 Accepted Submission(...
分类:
编程语言 时间:
2015-08-12 21:44:41
阅读次数:
210
据说是DAG的dp,强行做成图论。用spfa,松弛操作改成变长。注意状态的表示。#includeusing namespace std;#define MP make_pair#define fi first#define se secondtypedef pair pii;const int N ...
分类:
其他好文 时间:
2015-08-12 01:09:58
阅读次数:
105
题意:告诉n个点和m条边,求s到t的最短路径。。
思路:N和M都比较大了,n有20000,m有50000,用邻接表加SPFA。
#include
#include
#include
#include
#include
#include
#include
#define INF 99999999
using namespace std;
int n,m,s,t;
int dis[2...
分类:
其他好文 时间:
2015-08-10 20:06:17
阅读次数:
130
J - Wormholes
Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld
& %llu
Submit Status
Description
In the year 2163, wormholes were discovered. A wormhole is a subspace...
分类:
其他好文 时间:
2015-08-10 20:06:03
阅读次数:
114
原题: http://poj.org/problem?id=1511题目大意:
单向图,需要从点1到每个点去一次,去了马上回来,再去下一个点,求往返路径和。如果只有100个点,跑一遍floyd就可以了,这里有10w个点,不行。
朴素的dijkstra是N^2的复杂度,这里要超时。
所以这里我们用spfa这种接近2N的算法。由于二维数组空间不够,所以只能用vector或者邻接表,因为vecto...
分类:
编程语言 时间:
2015-08-10 16:14:11
阅读次数:
219
感谢书神的模板!!!int spfa(int s,int n)//单源最短路(s为起点,n为节点总数){ int u; for (int i=0; i que; que.push(s); vis[s]=true; dis[s]=0; while (!que.emp...
分类:
其他好文 时间:
2015-08-09 15:36:14
阅读次数:
194
题意给一个n个点m条边的图,每一个点和每一条边都有权值。现在要找一个环的点权和/边权和最大,求这个最大值。思路SPFA+二分
题目的关系式:点权和/边权和 = 0;
二分答案,然后用SPFA去check是否存在一个负权回路。参考code:/*
#pragma warning (disable: 4786)
#pragma comm...
分类:
其他好文 时间:
2015-08-08 00:06:15
阅读次数:
120
题目地址:codeforces #pi (DIV2) E
题目很水。。就是先求两边最短路,然后把可能为最短路的边挑出来,然后判断是否yes只需要转化成无向图跑一遍tarjan,找出割边,割边就是yes,然后剩下的边就让它的值为最短路-1就行了,如果-1后变成了非正数,就是no.
但是!!!居然卡spfa!!那是不是说cf以后就不能用可以卡的算法了。。完全可以出组数据来卡这些算法。。。比如spfa...
分类:
其他好文 时间:
2015-08-07 20:19:51
阅读次数:
145
题意:给一个有向图,每个点有一个权值,从1个点出发,初始能量有100,每到达新的点,能量就会加上那个点的权值,当能量大于0时才能继续走,可以多次进入同一点。问能否到达目标点思路:如果没正权环,则直接优先队列bfs模拟走的过程即可,因为先到不会比后到的能量少,那过程其实就和dijkstra差不多,但根...
分类:
其他好文 时间:
2015-08-07 07:02:56
阅读次数:
123
SPFA,多一个dp数组记录,特判n=1的情况,路径长度可能超int。...
分类:
其他好文 时间:
2015-08-06 18:32:51
阅读次数:
103