鱼C论坛

 找回密码
 立即注册
楼主: 迷雾少年

[技术交流] 递归求解-迷宫算法

[复制链接]
发表于 2019-10-20 21:41:28 | 显示全部楼层
学习一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-20 22:56:06 | 显示全部楼层

看看学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-21 17:31:03 | 显示全部楼层
回复
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-21 17:34:05 | 显示全部楼层
2
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-23 17:07:34 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-24 16:29:02 | 显示全部楼层
看看

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-25 09:20:58 From FishC Mobile | 显示全部楼层
Take a look
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-10-28 22:22:53 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-30 11:00:27 From FishC Mobile | 显示全部楼层
我爱鱼c
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-4 14:56:48 From FishC Mobile | 显示全部楼层
来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-11-12 14:24:21 | 显示全部楼层
11111
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 09:21:45 | 显示全部楼层
想看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-1 23:11:17 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-2 19:03:29 | 显示全部楼层
本帖最后由 java2python 于 2020-6-3 10:54 编辑


昨天,执行这个的时候,卡巴斯基报警,puzzle.exe作为病毒被删除了。
*向上之类方向只要放在数组里,就可以循环来调用
*不会走出迷宫吗,比如x=-1之类的,感觉需要外面在包一层0,从数据上就把这种可能性给控制住
  1. #include <iostream>
  2. using namespace std;

  3. int map[7][6]={  1 ,0, 1, 0, 0, 0,1, 1, 1, 1, 0, 1,0, 0, 1, 0, 1, 0,1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1,0, 1, 0, 1, 0, 0,0, 1, 0, 1, 1, 1,};
  4. int direct[4][2] = {{0,1},{0,-1},{1,0},{-1,0}};
  5. bool pass(int x,int y)
  6. {
  7.         if(map[x][y]==1)
  8.         {
  9.                         map[x][y]=2; //标记走过
  10.                         return true;
  11.         }
  12.         return false;
  13. }
  14. int find(int x,int y)
  15. {
  16.         if(x==4 && y==5) /* 这里是终点*/
  17.                 {
  18.                         cout<<"到达终点啦"<<endl;
  19.                         return 1; //结束,找到终点
  20.         }
  21.         if(pass(x,y))//当前可以通过
  22.         {
  23.                 for(int d=0;d<4;d++){
  24.                         if(find(x+direct[d][0],y+direct[d][1])==1){
  25.                                 cout<<x<<","<<y<<endl;
  26.                                 return 1;
  27.                         }
  28.                 }
  29.         }
  30. }
  31. int main()
  32. {
  33.         find(0,0);//起点0,0
  34.         return 0;
  35. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-5 10:19:04 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-9-17 15:42:37 | 显示全部楼层
44
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-9-22 10:56:00 | 显示全部楼层
答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-17 17:29:03 | 显示全部楼层
a
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-18 20:21:57 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-23 17:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表