![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
文章平均质量分 58
Beating_spark
Even a beating_spark can light a fire of wisdom!
展开
-
subway dijkstra
这个题实际上并不难 适合练习dijkstra#include "stdio.h"#include "stdlib.h"#include #define maxn 1000#define inf 2000000double map[maxn][maxn];double pos[maxn][2];double d[maxn];int vis[maxn];double dist(in原创 2016-03-21 22:37:40 · 233 阅读 · 0 评论 -
poj 3268 dijkstra
经典的最短路 只不过暴力求解肯定不行 所以呢 想一下简化的办法;(刚开始也是写了循环dijkstra 果断tle 所以后来想了一下)我们要计算去的路和回来的路 ,回来的路好半 ,以party为起点的单源最短路 /接下来我们想办法 怎么弄出来去的路 :其实去的路就是把map翻转以后 从party的单源最短路径;告诉我们动脑子才是王道!下面附ac代码#include "stdio.原创 2016-03-22 19:58:36 · 201 阅读 · 0 评论 -
prim 与 dijkstra 的区别
简单来说 两者框架很相似,但是dijkstra找的是从原点到没有归并的集合中距离最短的点,而prim找的是从已经归并的到没有归并的任意两点间的距离最小的边;原创 2016-03-23 19:05:40 · 413 阅读 · 0 评论 -
51nod 1459 迷宫游戏 dijkstra变形
51nod 的迷宫问题 其实是dijkstra算法的变形 我们在松弛操作的时候 对于cost值相同的节点 我们需要重新计算一下value值 然后取最大;用归纳法证明这个问题 :首先我们先假设 可以到达 k 点的并且到达时间最短的所有点 a1 a2 。。。。。 an(类似的 这些点已经有了cost最小的时候value最大的性质) 对于每一个点 我们在进行松弛操作的时候 必然会对 a原创 2016-06-25 16:37:12 · 243 阅读 · 0 评论 -
最小生成树算法
1.prim 类似于dijkstra 松弛就好 #include #include #include #include #include #include #include #include #include #include #include #include #define inf 1e9+7#define pi acos(-1)#define natrule ex原创 2016-07-13 14:47:01 · 284 阅读 · 0 评论 -
求强连通子图的方法以及简单实现
刚学 其实操作很简单 正向建立一个图 跑一遍 标记上时间 然后反过来再跑一遍(注意有可能区域不联通) 标记markKorasaju algorithm#include #include #include #include #include using namespace std;int vis[300];int edge[300][原创 2016-07-26 23:52:18 · 2398 阅读 · 0 评论 -
poj2186 Popular Cows
#include #include #include #include #include using namespace std;struct node{ int s,e;}arr[50010];vector mat[10020];vector tmat[10020];int n,m;int vis[15000];int mark[15000];int cnt[1原创 2016-07-27 01:54:21 · 189 阅读 · 0 评论