ACM 图论---深搜与宽搜
文章平均质量分 77
Angel_XiaoXiong
算法渣渣
展开
-
poj3984迷宫问题
http://poj.org/problem?id=3984宽搜,但是最后要求输出路径。所以队列里的元素应记录了指向父结点。我在node结构体里设置了father成员,然而它并不是直接指向父结点的指针,而是存储父结点在队列中的位置。这样的话,最后输出路径的时候,通过father(父结点队列位置)就可以访问父结点了。#include #include typedef stru原创 2016-06-18 13:28:28 · 302 阅读 · 0 评论 -
poj1724ROADS
http://poj.org/problem?id=1724解题思路:从城市 1开始深度优先遍历整个图,找到所有能到达 N 的走法 , 选一个最优的。优化:1) 如果当前已经找到的最优路径长度为L ,那么在继续搜索的过程中,总长度已经大于L的走法,就可以直接放弃,不用走到底了2) 用midL[k][m] 表示:走到城市k时总过路费为m的条件下,最优路径的长度。若在后续的原创 2016-06-17 13:26:29 · 345 阅读 · 0 评论 -
poj3083Children of the Candy Corn
http://poj.org/problem?id=3083#include #include #define Max 50int w,h;char maze[Max][Max];int start_x,start_y,end_x,end_y;int dir[4][2]={{0,-1},{-1,0},{0,1},{1,0}};//左上右下int visited[Max][Max]原创 2016-06-15 22:37:18 · 328 阅读 · 0 评论 -
poj2049Finding Nemo
http://poj.org/problem?id=2049#include #include #define MAX_N 210 #define INT_MAX 32767int v[MAX_N + 1][MAX_N + 1]; //v[i][j]为到达格子[i][j]的最小步骤数int Round[MAX_N + 1][MAX_N][4]; //用左上角点的坐标来指代格子,第三维原创 2016-06-14 19:54:23 · 486 阅读 · 0 评论 -
poj3278Catch That Cow
http://poj.org/problem?id=3278操,没剪枝,RE无数次。。#include #include #define Max 100001int visited[Max],queue[Max],n,k;int Breadth_FirstSearch(int p){ int front=0,rear=0,head,i,temp; if(p==k)原创 2016-06-12 18:22:22 · 312 阅读 · 0 评论 -
poj1753 Flip Game
http://poj.org/problem?id=1753位压缩,广度优先搜索异或运算的用途之一:使某些特定的位翻转,例如对数10100001的第2位和第3位翻转,则可以将该数与00000110进行按位异或运算。 10100001^00000110 = 10100111将当前棋局状态拟化为一个二进制数,比如:w w w ww w w ww w w ww w w w原创 2016-05-27 15:38:51 · 258 阅读 · 0 评论