A*
文章平均质量分 76
dy0607
Keep on coding
展开
-
POJ 2449 A*k短路
题意:给出一个有向图,起点终点以及k,求k短路 思路:使用A*算法,首先预处理出每个点到终点的距离h[i],搜索时使用优先队列,关键字为(f + h[i]),其中f 是已经走的距离,i是当前走到的节点 注意:此题坑点巨多: 1)起点可能与终点相同,此时0不算最短路,故k++ 2)k短路不存在时,输出-1 3)由于是有向图,从Dijkstra时只能用反边,A*时只能用正边,否则MLE原创 2016-09-03 16:20:20 · 378 阅读 · 0 评论 -
IDA* POJ2331 Water pipe
题意:给出起点与终点,以及k种水管的长度及其数量,求消耗的最少水管从起点修到终点 思路:首先在假设水管无限多的情况下分别求出横纵坐标到终点的最少步数,然后迭代加深搜索+剪枝即可 #include #include #include #include #include #include #define For(i,j,k) for(int i = j;i <= k;i ++) co原创 2016-08-27 20:16:29 · 539 阅读 · 2 评论