题目链接:POJ 2391 Ombrophobic Bovines
Ombrophobic Bovines
Time Limit: 1000MS
Memory Limit: 65536K
Total Submissions: 15006
Accepted: 3278
Description
FJ's co...
分类:
其他好文 时间:
2014-09-27 11:49:19
阅读次数:
225
点击打开链接
求顶点1到其他点的最短距离的最长距离。。
测试。。dijkstra + 优先队列
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define for0(a,b) for...
分类:
其他好文 时间:
2014-09-26 20:57:48
阅读次数:
147
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1869分析:这题可以用最短路来做,把认识的两个人看做相距为1的两个点,而不认识的两个人,看做相距为无穷大的两个点,就可以用最短路来做了,对于点数小于100用Floyd算法就可以了,这个题用Dijkstra,...
分类:
其他好文 时间:
2014-09-26 20:21:58
阅读次数:
181
题目:poj 3311 Hie with the Pie
题意:就是批萨点小二要送批萨,然后给你每个点的距离,有向的,然后让你就走一次回到原点的最短路。
分析:因为给出的是稠密图,所以要处理一下最短路,floyd
然后TSP就好。
枚举每个状态,对于当前状态的每一个已经走过的点,枚举是从那个点走过来的,更新最短路
状态:dp【st】【i】 :st状态下走到点 i 的最短路...
分类:
其他好文 时间:
2014-09-26 19:17:08
阅读次数:
193
题目链接:http://poj.org/problem?id=3268
题目大意:给你N个农场,在X农场要举办一个party,其它农场需要到X农场去,然后还要回来,问N个农场中距离最远的那个至少为多少?,给出的边为单向边。。。
思路:用dijkstra最初X农场到其它几个农场的最短距离,然后在把边反向,继续求出X到其它几个农场的最短距离,算出最大的那一个。。。
code:
#inc...
分类:
其他好文 时间:
2014-09-26 00:17:08
阅读次数:
241
上一篇博文中讲了Dijkstra算法,这次博文要讲解的是floyd算法,其中Dijkstra算法是属于贪心算法,而floyd算法是动态规划的一个算法:
具体的算法如下:
其中一个矩阵是用来存放最短路径的,另外一个矩阵是用来存放前驱顶点的;
#include
using namespace std;
#define Max 5
#define Infinity 65535
void ma...
分类:
其他好文 时间:
2014-09-25 11:17:09
阅读次数:
208
题目链接:POJ 2112 Optimal Milking
Optimal Milking
Time Limit: 2000MS
Memory Limit: 30000K
Total Submissions: 12446
Accepted: 4494
Case Time Limit: 1000MS
D...
分类:
其他好文 时间:
2014-09-25 03:56:18
阅读次数:
404
UVA 11280 - Flying to Fredericton
题目链接
题意:给定一些国家,和两个国家间的花费,现在有一些询问,询问每次最多转k次飞机,最小花费
思路:dijkstra变形,多开一维表示转机次数即可
代码:
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-09-25 01:22:28
阅读次数:
295
详细介绍:广度优先搜索算法八:Dijkstra算法戴克斯特拉算法(Dijkstra’s algorithm)是由荷兰计算机科学家艾兹赫尔·戴克斯特拉提出。迪科斯彻算法使用了广度优先搜索解决非负权有向图的单源最短路径问题,算法最终得到一个最短路径树。该算法常用于路由算法或者作为其他图算法的一个子模块。...
分类:
其他好文 时间:
2014-09-25 00:18:07
阅读次数:
280
图结构中应用的最多的就是最短路径的查找了,关于最短路径查找的算法主要有两种:迪杰斯特拉算法(Dijkstra)和Floyd算法。
其中迪杰斯特拉算法(Dijkstra)实现如下:
原理就是不断寻找当前的最优解:
void main()
{
int V[Max][Max]={0,8,32,Infinity,Infinity,
12,0,16,15,Infinity,
Infinity...
分类:
其他好文 时间:
2014-09-24 23:56:27
阅读次数:
295