随笔分类 -  基础算法—— Floyd

摘要:题目传送门 解析:这道题本质上是求两点之间经过n条边的最短路,是一道快速幂的应用,只需把快速幂自乘的操作改成最短路边数*2,把快速幂乘答案的操作改成维护答案即可。 1 #include<iostream> 2 #include<cstdio> 3 #include<map> 4 #include<c 阅读全文
posted @ 2019-06-22 13:33 shao0320 阅读(220) 评论(0) 推荐(0) 编辑
摘要:题目传送门 这道题很好地利用了Floyd的思想,我们要明白Floyd中dist[i][j]的含义:在外层循环变量为k时,dist[i][j]表示只经过编号不大于k号的节点,i->j的最短路,根据这个性质,我们不难想到在以k为中转点松弛之前,先以k为中转点看最小环(因为还没经过k号节点,从而保证了正确 阅读全文
posted @ 2019-06-19 19:56 shao0320 阅读(273) 评论(2) 推荐(0) 编辑
摘要:题目传送门(Vjudge) 这道题本质上是Floyd求传递闭包,所谓传递闭包,就是这个样子,非常的简单,即在一个传递闭包中元素之间都有某种关系。 这道题数据范围很小,因此我们可以开一个邻接矩阵,floyd[i][j]就表示i>j。当我们判断的时候很简单,当floyd[i][j]==floyd[j][ 阅读全文
posted @ 2019-06-15 13:12 shao0320 阅读(197) 评论(0) 推荐(0) 编辑
摘要:题目传送门 热烈庆祝SZM黄题破80,绿题破30,蓝题破20!!!(紫题还是2,,,,orz%%%) 非常水的一道最短路,小于等于100果断Floyd,要好好读题,别忘记特判,8分钟基本就能做出来啦~~~ 参考程序如下: 1 #include<iostream> 2 #include<cstring 阅读全文
posted @ 2019-06-10 21:09 shao0320 阅读(177) 评论(0) 推荐(0) 编辑

****************************************** 页脚Html代码 ******************************************
点击右上角即可分享
微信分享提示