搜索
Dragon--C
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
迷宫 做的第一个搜索题
Description 在N*N的迷宫内,“#”为墙,“.”为路,“s”为起点,“e”为终点,一共4个方向可以走。从左上角((0,0)“s”)位置处走到右下角((n-1,n-1)“e”)位置处,可以走通则输出YES,不可以走则输出NO。 Input 输入的第一行为一个整数m,表示迷宫的数量。 其后每个迷宫数据的第一行为一个整数n(n≤16),表示迷宫的边长,接原创 2014-04-11 12:58:37 · 1074 阅读 · 0 评论 -
红与黑
Description 有一个矩形房间,覆盖正方形瓷砖。每块瓷砖涂成了红色或黑色。一名男子站在黑色的瓷砖上,由此出发,可以移到四个相邻瓷砖之一,但他不能移动到红砖上,只能移动到黑砖上。编写一个程序,计算他通过重复上述移动所能经过的黑砖数。 Input 输入包含多个数据集。一个数据集开头行包含两个正整数W和H,W和H分别表示矩形房间的列数和行数,且都不超过20.原创 2014-04-11 14:24:02 · 974 阅读 · 0 评论 -
搜索--HDU简单DFS
HDU 1241 Oil Deposit 水题一到。。。。。 #include #include #include #include #include using namespace std; int m,n; char ch[110][110]; int a[8][2]={{1,0},{1,1},{0,1},{-1,1},{-1,0},{-1,-1},{0,-1},{1,-1}原创 2015-05-10 16:40:18 · 376 阅读 · 0 评论 -
HDU-1242——DFS+优先队列
大概就是从起点r到终点a的最短距离, 经过 . 那么时间加1; 经过 x 那么时间加2; # 代表障碍不能通过; 也有可能没有a。。。。。 #include #include #include #include #include #include using namespace std; struct node { int x,y,step; friend bool原创 2015-05-11 14:15:53 · 366 阅读 · 0 评论 -
POJ 3278— 入门BFS
简单的BFS 分三种方法进行搜索 x+1 x-1 x*2; 根据BFS的性质 第一次找到K的 一定是用时间最少的。 #include #include #include #include using namespace std; int x,k; int num[100010];//记录搜索到的位置 int ans; int bfs() { queue que; que.原创 2015-05-11 21:46:33 · 408 阅读 · 0 评论 -
POJ 1321 _ 简单dfs
一道很水的dfs #include #include #include #include using namespace std; int n,k; char ch[10][10]; int map[10]; int ans; void dfs(int x,int tmp) { if(tmp==k) { ans++; return; } if(x>=n)return;原创 2015-05-11 21:43:22 · 351 阅读 · 0 评论 -
HDU 1010— DFS+奇偶剪枝
直接上DFS会超时 所以需要用到剪枝 这道题也就是用到了奇偶剪枝 奇偶剪枝: 现假设起点为(sx,sy),终点为(ex,ey),给定t步恰好走到终点, s | | |原创 2015-05-11 21:53:05 · 353 阅读 · 0 评论 -
POJ 3126--BFS
一道BFS题目 题意大致如下: 给定两个四位数 x ,y(x ,y都是素数)。要求从x变化到y。 变化规则为每次只能改变四位数x中的其中一位得到k,要求k也是素数。在这样的变化规则下求x变化到y的最小次数。 根据规则直接BFS就行。 代码如下: #include #include #include #include #include using namespa原创 2015-05-13 00:22:35 · 378 阅读 · 0 评论
分享