Wormholeshttp://poj.org/problem?id=3259spfa 2e 1 #include 2 #include 3 #include 4 #include 5 #define mt(a,b) memset(a,b,sizeof(a)) 6 using namespace s...
分类:
其他好文 时间:
2014-09-02 19:42:45
阅读次数:
235
优化: 1 . 不对dist数组进行更新(单调性保证)(否则狂TLE)
2 . 随a权值递增而加边,同时在函数外让点入队 (否则狂WA)
3 . 对a权值排序然后进行枚举。(否则有可能常数TLE)
以下为非必须优化:
4 . 对边进行边权排序,加边时可以保证线性时间复杂度
5 . 对SPFA(Dijsktra)进行优先队列优化(堆优化)。(因...
分类:
其他好文 时间:
2014-09-02 17:56:45
阅读次数:
1010
UVA 1416 - Warfare And Logistics
题目链接
题意:给定一个无向图,每个边一个正权,c等于两两点最短路长度之和,现在要求删除一边之后,新图的c值最大的是多少
思路:直接枚举删边,每次做一次dijkstra的话复杂度太高,其实如果建好最短路树,如果删去的边在最短路树上,才需要去做,这样复杂度就优化到(n^2mlog(n)),勉强可以接受
代码:
...
分类:
其他好文 时间:
2014-09-02 17:48:45
阅读次数:
263
Invitation Cards http://poj.org/problem?id=1511dij+priority queue o (elogv) 1 #include 2 #include 3 #include 4 #define mt(a,b) memset(a,b,sizeof(a...
分类:
其他好文 时间:
2014-09-02 15:23:45
阅读次数:
238
单源最短路径之dijkstra算法最优子问题:dis(s,...,e)是s到e的最短路径,在这条路径上的所有点之间dis(pi,pj)距离是最小的。算法思路:首先初始化,dis[s][i]是s到i的距离,直接相连的就是其距离,不直接相连的就是无穷大下面是算法主要模块:1.选取dis[i]最小的点加入...
分类:
其他好文 时间:
2014-09-02 00:03:43
阅读次数:
197
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1535题意:有向图,求点1到点2-n的最短距离之和以及点2-n到点1的最短距离之和方法:1、跑1为原点的最短路2、反向建图(把有向图的边反向,(u,v,w)变成(v,u,w)),跑1为原点的最短路3、将两者距...
分类:
其他好文 时间:
2014-09-01 21:02:44
阅读次数:
393
给出一个无向连通图以及边权,目的求从一个点到另一个点的路径中 边权最大值 最小的那条路径,输出的是该条路径的最大边权。
因为是两点间路径问题,且数据量很小(只有100个) ,所以考虑使用floyd算法。
但是要求的并不是传统 floyd 所求的 两点之间最短路 问题,但是通过理解floyd算法的原理,可以发现floyd的思想可以用来解决这种问题:
对于任何一条至少包含两条边的路径i->j,一...
分类:
其他好文 时间:
2014-09-01 15:37:13
阅读次数:
163
此题中起点有1000个,别有20000条。用链式前向星建图,再枚举起点用SPFA的话,超时了。(按理说,两千万的复杂度应该没超吧。不过一般说计算机计算速度 1~10 千万次/秒。也许拿最烂的计算机来卡时间) 有一个技巧,加一个超级源点。也就是加一个点,使得该点连通所有的起点,并且边的权值为0。...
分类:
其他好文 时间:
2014-09-01 00:25:02
阅读次数:
295
C -Hie with the PieTime Limit:2000MSMemory Limit:65536KB64bit IO Format:%I64d & %I64uSubmitStatusAppoint description:DescriptionThe Pizazz Pizzeria pr...
分类:
其他好文 时间:
2014-08-31 17:12:21
阅读次数:
460