首页 > 其他分享 >迷宫问题

迷宫问题

时间:2023-03-14 20:47:52浏览次数:33  
标签:15 int sum 迷宫 dfs 问题 && 输入

(啊哈哈哈鸡汤来咯)
设有一个N×N(2<=N<=10)方格的迷宫,入口和出口分别在左上角和右上角。迷宫格子中分别放0和1,0表示可通,1表示不能,入口和出口处肯定是0.迷宫走的规则如下所示:即从某点开始,有八个方向可走,前进方格中数字为0时表示可通过,为1时表示不可通过,要另找路径。找出所有从入口(左上角)到出口(右上角)的路径(不能重复),输出路径总数,如果无法到达,则输出0.

输入

第一行输入N,接下来输入N*N的矩阵

输入

输出路径总数

样例输入

3
0 0 0
0 1 1
1 0 0

样例输出

2

(555不想写啦)

#include <bits/stdc++.h>
using namespace std;
int sum,n;
bool a[15][15];
int dx[9]={0,0,0,1,-1,1,-1,1,-1};//八个方向
int dy[9]={0,1,-1,0,0,1,-1,-1,1};
void dfs(int x,int y)
{
	if(x==1&&y==n)//到达边界
	{
		sum++;
		return;
	}
	for(int i=1;i<=8;i++)//八个方向
	{
		int tx=x+dx[i];//下一步要走的位置
		int ty=y+dy[i];
		if(tx>0&&ty>0&&tx<=n&&ty<=n&&a[tx][ty]==false)
		{//能走
			a[tx][ty]=true;
			dfs(tx,ty);
			a[tx][ty]=false;//回溯
		}
	}
}
int main()
{
	cin >> n;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			cin >> a[i][j];
		}
	}
	a[1][1]=true;
	dfs(1,1);
	cout << sum;
	return 0;
}

标签:15,int,sum,迷宫,dfs,问题,&&,输入
From: https://www.cnblogs.com/momotrace/p/migong_pr.html

相关文章

  • n-皇后问题(bfs)
        #include<iostream>usingnamespacestd;constintN=20;//N*N两倍intn;boolcol[N],dg[N],udg[N];//同一列,对角线,反对角线(标记一下是否可以走)charg[......
  • HashMap、Hashtable、ConcurrentHashMap线程安全问题
    publicclassHashMapDemo{publicstaticvoidmain(String[]args)throwsInterruptedException{//HashMap是线程不安全的//Hashtable是线......
  • vscode问题
    解决VSCode无缘无故卡顿的问题:https://blog.csdn.net/u011296285/article/details/121121118 ......
  • diango_vue cors跨域问题
    pip3install django-cors-headers注意版本,django和django-cors-headers存在版本兼容问题,安装过高版本的django-cors-headers会导致自动升级django版本,带来一些......
  • 前端奇异问题集锦
    1、点击事件不生效@on-click不生效改成@click生效了  2、iview和viewdesign不一样 3、子组件引用不生效import{}from''import form''有无大括号的原......
  • 如何借助智慧路灯杆解决充电桩短缺问题?
    新能源汽车是交通产业的大趋势,2022年,全球新能源车(包含纯电、混动、氢燃料)销售量约1065万辆,按年增长达63.6%,其中纯电动车为789万辆,增长68.7%。随着新能源汽车销量的连年激增......
  • Node服务端内存泄露问题分析
    服务端内存泄露问题分析1,问题发现首先在进行服务端单核cpu爆满的问题排查中发现服务端代码多进程通信存在问题,在解决多进程通信问题后,我们依然在对项目进行压力测试目前......
  • 腾讯云服务器安装完jdk,tomcat,无法访问的问题
    jdk8,tomcat11,控制台防火墙规则已添加该端口系统内firewall已添加开放该端口启动tomcat初步看顺利启动,后经过catalina.sh发现每次启动后都出错了,网上搜索可能是jdk8与t......
  • 分销系统开发有哪些重要问题?这几个问题要清楚
     在如今的时代下,相信大家对于分销系统开发不会感到陌生,并且开始加入其中。但是我们在开发之前还要清楚一些重要问题,那么分销系统开发有哪些重要问题?今天名锐讯动为大家讲......
  • DELPHI + uniGUI 开发CentOS环境下的Apache模块遇到的问题
    一直以来,用uniGUI做开发都比较顺手,但是缺点是这样做的只能在Windows环境下使用。而我们现在租用的虚拟服务器,往往都是CentOS的环境。而DELPHI+uniGUI能不能做LINUX的应......