题意:轨道网,有若干转换器,每个转换器都和其他若干转换器相连,转换器初始指向第一个与其相连的转换器。问要到达终点需要最少转换多少次?
思路:可以用dijkstra单源最短路来做,把轨道网看做有向图(因为1第一个指向2,2的第一个不一定指向1),当前转换器处始指向的那个转换器之间的路径权值为0,其他路径权值为1,求一次起点到终点的最短路,结果就是最少转换次数,注意可能没有路径,这时要输出-1
代...
分类:
其他好文 时间:
2014-06-07 02:07:18
阅读次数:
226
http://poj.org/problem?id=2449
大致题意:给出一个有向图,求从起点到终点的第K短路。
K短路A*算法讲解:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define LL long...
分类:
其他好文 时间:
2014-05-24 23:39:47
阅读次数:
352
http://poj.org/problem?id=3463
大致题意:给出一个有向图,从起点到终点求出最短路和次短路的条数之和。
解法:
用到的数组:dis[i][0]:i到起点的最短路,dis[i][1]:i到起点的严格次短路
vis[i][0],vis[i][1]:同一维的vis数组,标记距离是否已确定
sum[i][0]:i到起点的最短路条数,sum[i][1]:...
分类:
其他好文 时间:
2014-05-24 21:50:31
阅读次数:
287
【迷宫问题】
【算法1---堆栈回溯】
计算机解迷宫时,通常用的是"试探和回溯"的方法,即从入口出发,顺某一方向向前探索,若能走通,则继续往前走;否则沿原路退回,换一个方向再继续探索,直至所有可能的通路都探索到为止,如果所有可能的通路都试探过,还是不能走到终点,那就说明该迷宫不存在从起点到终点的通道。
1.从入口进入迷宫之后,不管在迷宫的哪一个位置上,都是先往东走,如果走得通...
分类:
其他好文 时间:
2014-05-22 13:25:23
阅读次数:
283
http://acm.hdu.edu.cn/showproblem.php?pid=2833
大致题意:给定一个无向图,以及悟空和师傅起点与终点,求它们分别从起点到终点的最短路径中经过相同的点的最大个数。
思路:首先dijkstra求出最短路,那么如果有dis[a] + map[a][b] = dis[b],则边(a,b)一定在最短路径上。根据这一定理可以求出所有最短路径。然后...
分类:
其他好文 时间:
2014-05-22 13:00:41
阅读次数:
234
POJ 3278 Catch That Cow
题目大意:
告诉你起点位置和终点位置,你可以有三种操作,从某个位置x,可以到达x-1,x+1,2*x,问你从起点到终点最短时间?
解题思路:
利用bfs枚举位置即可
但是刨除以下情况,也就是剪枝一下
1、当x终点位置时,x+1和2*x均不能到达
解题代码:见本文详细...
分类:
其他好文 时间:
2014-05-21 14:33:08
阅读次数:
241
HDU 1010 Tempter of the Bone
题目大意:
给定N*M一张图,问你从起点S到终点D不经过障碍物X恰好K步能否到达?
解题思路:
利用回溯法搜索1条路径即可。
但是注意剪枝
(1)如果剩余的步数小于当前位置到终点的绝对距离,肯定不可行
(2)如果剩余的步数相比到终点的位置的绝对距离为奇数,肯定也不可行
解题代码:见文章。...
分类:
其他好文 时间:
2014-05-21 14:04:09
阅读次数:
247
Problem Description
XX星有许多城市,城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure---超级空中漫游结构)进行交流,每条SARS都对行驶在上面的Flycar限制了固定的Speed,同时XX星人对 Flycar的“舒适度”有特殊要求,即乘坐过程中最高速度与最低速度的差越小乘坐越舒服 ,(理解为SARS的限速要求,flycar必须瞬间提...
分类:
其他好文 时间:
2014-05-16 01:43:49
阅读次数:
270
题目1008:最短路径问题
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:5119
解决:1631
题目描述:
给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的。
输入:
输入n,m,点的编号是1~n,然后是m行,每行4个数...
分类:
其他好文 时间:
2014-05-15 01:24:54
阅读次数:
210
1 /* 2 题意:国际象棋起点到终点移动的最少步数 3 4
题解:水题,BFS就过了,有人用双向BFS 5 */ 6 #include 7 #include 8 #include 9 10 using namespace
std;11 12 int dir[8][2]={-2,1,-1,...
分类:
其他好文 时间:
2014-05-09 05:34:20
阅读次数:
387