最短路
laserss
laserss@qq.com
展开
-
hdu2112HDU Today dijkstra最短路
hdu2112HDU Today 1.无向图 2.起点和终点可能是同一点,输出为0 #include using namespace std; #define INF 1000000000 int mp[160][160],visit[160],V; char name[160][35]; int num(char t[]) { int i; for(i=1;i原创 2012-07-15 22:55:20 · 824 阅读 · 0 评论 -
hdu1385Minimum Transport Cost-floyd+打印路径
hdu1385 肚子好饿! #include #include #include #define M 500 #define INF 1000000000 using namespace std; int mp[M][M],path[M][M],fee[M]; int main() { int n,a,b,i,j,k,min; while(scanf("%d原创 2012-08-16 17:54:41 · 803 阅读 · 0 评论 -
hdu 1875畅通工程再续-prim最小生成树
hdu 1875畅通工程再续 邻接矩阵中的数据必须初始化完整 #include #include using namespace std; const double INF=1000000000.0; double mp[100][100]; struct point { int x,y; } P[100]; double prim(int N) { int i,j,k原创 2012-07-29 18:52:23 · 917 阅读 · 0 评论 -
poj1125Stockbroker Grapevine - floyd最短路
poj1125Stockbroker Grapevine 题目生词比较多... 翻译如下: http://poj.org/showmessage?message_id=162255 首先,题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),然后接下来N行描述第i(1 每行开头数字M为该行对应的经纪人有多少个经纪人朋友(该节点的出度,可以为0),然后原创 2012-07-21 10:10:36 · 790 阅读 · 0 评论 -
最短路学习
dijkstra bellmanford spfa floyd的区别: bellman-ford 可以有负权,但不能有负权回路,spfa是bellman-ford的队列优化,时间发咋度o(ke),其中k为所有顶点进队的平均次数,可以证明k一般小于等于2。 dijkstra 不可以有负权,但效率比bellman-ford快,o(2n次方),用二叉堆优化o(原创 2012-07-08 21:13:40 · 773 阅读 · 0 评论 -
uva10034Freckles - prime最小生成树
一个换行符的问题wr十几次 - - 各种debug诶 #include #include #define INF 1000000000 struct point { double x,y; } P[105]; double D(point a,point b) { return sqrt((b.y-a.y)*(b.y-a.y)+(b.x-a.x)*(b.x-a.x原创 2012-07-16 21:35:02 · 1030 阅读 · 0 评论 -
pku 3259 Wormholes (Bellman ford判断负权边)
题目链接: pku3259 Wormholes 之前在数据结构书上看了dijkstra 和floyed(从来没有自己写过) 但是有负权边的一直不会 所以专门找了题目看看怎么写 感觉上bellmanford 跟 dijkstra 处理问题的关键步骤差不多 都是不断的松弛 但是bellmanford顺序不同 dijkstra是对每个点进行松弛原创 2012-07-09 11:09:33 · 771 阅读 · 0 评论 -
hdu2544 bellmanford实现
//hdu2544 #include #define Infinity 0x3f3f3f3f using namespace std; struct Edge_Node { int s,e,c; //start end cost } g[10005]; int dist[105];原创 2012-07-10 10:58:58 · 879 阅读 · 0 评论 -
hdu2680最短路Choose the best route
hdu2680Choose the best route 先将多个起点用一个超级源点连接 ,权值为0 然后用dijkstra就可以得到结果了 #include using namespace std; #define INF 100000000 int mp[1010][1010],dist[1010]; bool visit[1010]; int main() {原创 2012-07-13 16:23:46 · 647 阅读 · 0 评论 -
hdu1690 Bus System floyed最短路
hdu1690 Bus System floyd中3个循环的顺序弄反了 wa了一天 = = 正确顺序应该是先 中间节点 k ,然后才是 i , j。 #include using namespace std; int INF = -1; __int64 mp[110][110],location[110],N,M,L1,L2,L3,L4,C1,C2,C原创 2012-07-14 15:52:19 · 836 阅读 · 0 评论 -
最短路一个的细节
没次求最近点的时候都赋值为-1 ,循环结束后还是-1的话 return -1 有特殊的作用原创 2012-11-30 21:39:27 · 675 阅读 · 1 评论