
数据结构实验之栈:走迷宫
View Code
发布日期:2021-05-09 04:13:40
浏览次数:22
分类:博客文章
本文共 1666 字,大约阅读时间需要 5 分钟。
走迷宫Time Limit: 1000MS Memory limit: 65536K
题目描述
一个由n * m 个格子组成的迷宫,起点是(1, 1), 终点是(n, m),每次可以向上下左右四个方向任意走一步,并且有些格子是不能走动,求从起点到终点经过每个格子至多一次的走法数。
输入
第一行一个整数T 表示有T 组测试数据。(T <= 110)
对于每组测试数据:
第一行两个整数n, m,表示迷宫有n * m 个格子。(1 <= n, m <= 6, (n, m) !=(1, 1) ) 接下来n 行,每行m 个数。其中第i 行第j 个数是0 表示第i 行第j 个格子可以走,否则是1 表示这个格子不能走,输入保证起点和终点都是都是可以走的。
任意两组测试数据间用一个空行分开。
输出
对于每组测试数据,输出一个整数R,表示有R 种走法。
示例输入
32 20 10 02 20 11 02 30 0 00 0 0
示例输出
104
1 #include2 #include 3 #include 4 #define maxn 10 5 int map[maxn][maxn],vis[maxn][maxn],n,m,k; 6 void BFS(int u,int v) 7 { 8 int x,y; 9 int a[]= {0,0,-1,1},b[]= {-1,1,0,0};10 for(int i=0; i<4; i++)11 {12 x=u+a[i];13 y=v+b[i];14 if(x==n && y==m)15 k++;16 else if(x<=n && x>0 && y<=m && y>0)17 {18 if(!map[x][y] && !vis[x][y])19 {20 vis[x][y]=1;21 BFS(x,y);22 }23 }24 }25 vis[u][v]=0;//vis[u][v]的值在上面的循环中可能会改变,所以要清零。26 }27 int main()28 {29 int T;30 scanf("%d",&T);31 while(T--)32 {33 k=0;34 int i,j;35 memset(map,0,sizeof(map));36 memset(vis,0,sizeof(vis));37 scanf("%d%d",&n,&m);38 for(i=1; i<=n; i++)39 for( j=1; j<=m; j++)40 scanf("%d",&map[i][j]);41 vis[1][1]=1;42 BFS(1,1);43 //验证输出44 /* for(i=1;i<=n;i++)45 {46 for(j=1;j<=m;j++)47 printf("%d ",vis[i][j]);48 printf("\n");49 }*/50 printf("%d\n",k);51 }52 return 0;53 }
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年04月04日 22时31分50秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
C#中Dispose和Close的区别!
2019-03-06
如何让服务在流量暴增的情况下保持稳定输出
2019-03-06
一个20年技术老兵的 2020 年度技术总结
2019-03-06
一例完整的websocket实现群聊demo
2019-03-06
SQLSERVER数据库死锁与优化杂谈
2019-03-06
【Net】ABP框架学习之它并不那么好用
2019-03-06
Git 笔记
2019-03-06
Harbor 批量清理历史镜像
2019-03-06
使用Azure Functions玩转Serverless
2019-03-06
.NET Core 基于Websocket的在线聊天室
2019-03-06
使用MySQL Shell创建MGR
2019-03-06
win10新版wsl2使用指南
2019-03-06
spring-boot 使用hibernate validation对参数进行优雅的校验
2019-03-06
关于我
2019-03-06
数据结构实验之栈四:后缀式求值
2019-03-06
图结构练习——最小生成树(prim算法(普里姆))
2019-03-06
sdut 2498【aoe 网上的关键路径】
2019-03-06
【PHP自定义显示系统级别的致命错误和用户级别的错误】
2019-03-06
【JAVA多线程中使用的方法】
2019-03-06
【JAVA网络流之URL】
2019-03-06