最短路变形。
题意是说不同的点之间有不同的公司建立了不同连接。
询问 A,B之间如果存在通路,有那些公司。
我用bool g[][][26] 来表示26个字母。然后Floyd, G++就超时。C++ 就AC了。
然后看别人代码才知道还有位运算……ORZ。。。
自己的代码:C++ AC。813ms
#include
#include
#inclu...
分类:
Web程序 时间:
2014-07-19 23:47:19
阅读次数:
353
Floyd可解。
求最短的,能来回的路。用Floyd 并且在 三点不相同的时候 把最短找出来。然后更新。
开始没有判断!=INF。结果溢出一堆负数。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define INF 0x7...
分类:
其他好文 时间:
2014-07-19 18:13:20
阅读次数:
245
裸的FLOYD 求最小环。 1 #include 2 #include 3 using namespace std; 4 const int inf=100000000; 5 const int MAXN=105; 6 int n,m,minc; 7 int map[MAXN][MAXN],di.....
分类:
其他好文 时间:
2014-07-19 17:14:38
阅读次数:
212
floyd求最小环。注意,该算法是用于无向图的。若为有向图,直接用原始的floyd求得点对间的距离,再枚举点对即可。(个人直觉是这样,没试过)改进的floyd求无向图最小环:可以用以下代码:POJ 1734 1 #include 2 #include 3 #include 4 #include...
分类:
其他好文 时间:
2014-07-19 17:07:48
阅读次数:
259
题目:poj1125Stockbroker Grapevine
题意:此题题意远比题目难
首先,题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1
分析:说的很清楚了,最短路算法基本都能水过,可以选熟悉的用
强调:floyd算法用前一定初始化为INF,否则会很惨。
代码:
#include ...
分类:
其他好文 时间:
2014-07-19 11:33:04
阅读次数:
221
最短路问题。
Dijkstra,SPFA,Floyd 都可求。题意很明了,求最安全的路,乘起来就好了。
有个小优化就是SPFA 算过的起点就不再去算了。
还有判断一下终点,开始没判断,WA了一发。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-07-19 02:45:06
阅读次数:
183
最短路+DP(个人用的SPFA+完全背包)
做了一上午……开始想用SPFA+BFS。但是写了半天越写越乱,放弃了。
就想到了是不是可以当作背包问题(背出病了……)把鞋子可以使用的次数当作背包容量。做完全背包。
先N次SPFA把 各点的最短距离算出来,其实比较适合Floyd。(个人用vector实现伪邻接表,然后SPFA)
然后SPFA更新路径的时候,当鞋子使用次数不...
分类:
其他好文 时间:
2014-07-18 11:18:36
阅读次数:
279
给出来的数据量还是可以的。题意:有若干个牧场,至少有两个不连通,一个牧场的直径就是牧场中最远的两个牧区的距离。要求找出几个牧场中最短的直径,就是找一条路径连接几个牧区,使这个直径最终最小。
基本方法,把整个图根据输入划分成几个不连通的牧区,然后求出每个牧区的直径(即每个连通块中的最长路径),然后枚举两个不在同一牧区的点,设blocks[i]记录第i个节点所在连通块的直径,那么result = m...
分类:
其他好文 时间:
2014-07-18 11:04:46
阅读次数:
287
dijkstra算法floyd算法最小生成树将所有的分成两个集合,一个是已经按照最小值排完顺序的,另外一个是没有排完顺序的,每次在查找从排完顺序的集合到未排完顺序的集合的最短路径,然后将未排完顺序的集合里面的值加入到已排完顺序的集合里。最小生成树算法:例题,第一行输入N和M,代表点的个数和他们之间存...
分类:
其他好文 时间:
2014-07-17 23:20:31
阅读次数:
335
Dijkstra算法1.定义概览Dijkstra(迪杰斯特拉)算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法是很有代表性的最短路径算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论...
分类:
其他好文 时间:
2014-07-12 00:23:03
阅读次数:
308