
最短路径题集
qq_34851605
这个作者很懒,什么都没留下…
展开
-
Choose the best route(Dijkstra)
Choose the best route(Dijkstra)原题:hdu2680这是一道有点难度的最短路径题,要想到以最后终点为起点进行搜索,或者新建一个起点用0表示,题目给的起点与0点连接且距离为零,其他点不与0点相连接,进行搜索。我一开始用Floyd来解,发现后来怎么优化都超时,看来这种单源点题目还是要用Dijkstra来解。代码如下:#include <iostream>...原创 2019-03-01 20:10:18 · 257 阅读 · 0 评论 -
Einbahnstrasse(Floyd)
Einbahnstrasse(Floyd)原题:hdu2923这个是一个很明显的Floyd最短路径题,就是把字符串转化成对应的数字比较麻烦,我一开始用string保存地名,后来发现cin>>string;会忽视回车键,所以建议此题还是用map<string,int>和char数组来做简单一点。代码如下:#include <iostream>#inclu...原创 2019-03-01 20:17:13 · 238 阅读 · 0 评论 -
最短路径问题(dijkstra)
最短路径问题(dijkstra)原题:hdu3790这是一道明显但又有点复杂的dijkstra最短路径题,写的时候要设两个数组,一个是距离,一个是费用,算的时候先遍历距离,再在更新数组时先比较距离,距离相同时再比较费用大小,用Floyd的话应该会超时。代码如下:#include <iostream>#include <cstdio>using namespac...原创 2019-03-02 15:35:47 · 207 阅读 · 0 评论 -
畅通工程续(Floyd算法)
畅通工程续(Floyd算法)原题:hdu1874这是一道比较水的最短路径问题,我用的是Floyd,不过建议用dijkstra(单源问题上效率比较Floyd高)不过这题数据有点坑,我连WA两发,因为数据中存在同起点同终点但距离不为零的情况代码如下:#include <iostream>#include <cstdio>using namespace std;...原创 2019-02-26 17:24:52 · 233 阅读 · 0 评论 -
一个人的旅行(Floyd)
一个人的旅行(Floyd)原题:hdu2066一开始以为是一道简单的多源最短路径问题,就用Floyd算法来解,后来发现时间复杂度太高了,看过别人的题解,学到了Floyd算法+剪枝,就是 for(int i=1;i<=1000;i++)这行代码后加一个 if(mp[i][k]<ma)来剪枝可以大大缩短时间。代码如下:#include <i...原创 2019-02-26 18:46:04 · 329 阅读 · 0 评论 -
HDU Today(Floyd)
HDU Today(Floyd)原题:hdu2112这是一道一般的最短路径问题,需要先处理数据一下,把给的字符串表示的地址转换成数字,这里可以用很多种方法,比如直接用char数组转换为int,string转换成int,map<string,int>pl等等很多种方法。我这里用的是string转换成int,但是第一次交的时候RE了,查了资料发现不能用memset()初始化(code:...原创 2019-02-27 13:20:54 · 144 阅读 · 0 评论 -
最短路(Floyd)
最短路(Floyd)原题:hdu2544这是一道很基础的单源最短路径问题,可以用dijkstrad(解决单源问题速度快),不过我用的是Floyd算法(解决多源问题速度快,代码简单),这里要剪枝来加快解题效率。代码如下:#include <iostream>#include <cstdio>using namespace std;int n,m,ma=100...原创 2019-02-27 13:39:49 · 372 阅读 · 0 评论