【题解】 " P1613 ~~鸽王~~跑路" 一道思维好题! 考虑$2^k$的传递性。直接64遍$floyd$求所有$2^k$的路径,转移方程是 $dp(i,j,k)=[dp[i][t][k 1]$&&$dp[t][j]][k 1]$ 有了这个之后先$O(n^3)$预处理,然后根据这样的数组直接建边 ...
分类:
其他好文 时间:
2019-01-29 18:20:03
阅读次数:
156
最短路的路径打印问题 同时路径要是最小字典序 字典序用floyd方便很多 学会了两种打印路径的方法!!! #include <stdio.h> #include <string.h> #define N 110 #define INF 1000000000 int d[N][N],path[N][N ...
分类:
其他好文 时间:
2019-01-29 11:59:59
阅读次数:
186
9021#1259香甜的黄油 给出点权。边权全部为1。求设在哪个牧场,牛的总移动距离最短。 无论是Floyd还是dijistra,都要有一步假设这个牧场为答案进行计算。不算不知道啊,所以几个牧场,几次计算。 对于Floyd,直接计算;对于dijstra,几个牧场,要跑几次单源最短路径,然后计算。 F ...
分类:
其他好文 时间:
2019-01-28 16:09:51
阅读次数:
182
不想用floyd了 也不一定适合 floyd只能处理小数据 dijkstra算法 wa了很久 一个是dijkstra里面的u 导致RE了无数次 下标溢出 还有就是注意细节 当起点和终点是一个地方的时候 输出0 #include<iostream> #include<map> #include<cst ...
分类:
其他好文 时间:
2019-01-27 16:30:10
阅读次数:
166
floyd算法秒过。。。这个算法真的好简单 注意的一点是 两个城镇可能有多条路 存短的一条!!! #include<bits/stdc++.h> using namespace std; int m1[300][300]; int main() { int n,m; while(scanf("%d% ...
分类:
其他好文 时间:
2019-01-26 15:19:47
阅读次数:
142
Description 给出一张无向的完全图(任意两点之间都有一条边的图)G=(V,E),它可以表示出某一块大陆的地图:每个顶点表示一座城市,每条边代表连接的两个城市间的距离,该大陆任两个城市都是直接连通的。另外在这个大陆上有两个特殊的国家,我们称为A国与B国,其中A国有N个城市,B国有M个城市。这 ...
分类:
其他好文 时间:
2019-01-24 21:49:48
阅读次数:
204
POJ - 1734 思路 : Floyd 实质 dp ,优化掉了第三维. dp [ i ] [ j ] [ k ] 指的是前k个点优化后 i -> j 的最短路。 所以我们就可以利用这个性质去求 最小环,最小环的构成可以看作是由一条 i -> k k->j 加上 dp [ i ] [ j ]的最短 ...
分类:
其他好文 时间:
2019-01-23 19:34:38
阅读次数:
155
这里给大家介绍三种最短路常用算法: floyd(O(n^3))、dijkstra(O(nlogn))、SPFA(O(KE))(k是进队列次数,在没有负环的情况下2) 其实还有一个Bellman Ford(O(nm))算法,但由于不常用而且SPFA是这个算法的改进版本,在这里就不列举了 floyd:效 ...
分类:
编程语言 时间:
2019-01-19 21:07:57
阅读次数:
265
《啊哈!算法》总结:Floyd-傻子也能看懂的弗洛伊德算法(转) 如果你看不懂,你就还不如傻子 Floyd数学推理过程:https://www.cnblogs.com/ECJTUACM-873284962/p/6995648.html 相关练习题目:奇怪的电梯 医院设置 ...
分类:
编程语言 时间:
2019-01-16 16:33:45
阅读次数:
204
链接:https://vjudge.net/problem/POJ-3660 题意: 有N个牛(1-100),两两对决M次(1-2500)。 得到一个结果。求能准确确定名次的牛的个数。 思路: 一头牛可以被a头牛击败,同时击败b头牛时,这头牛的名次确定。 Floyd算法。 代码: ...
分类:
其他好文 时间:
2019-01-16 13:12:10
阅读次数:
186