萌新求助
  • 板块P1605 迷宫
  • 楼主崔化博
  • 当前回复2
  • 已保存回复2
  • 发布时间2020/10/24 18:38
  • 上次更新2023/11/5 09:58:56
查看原帖
萌新求助
304524
崔化博楼主2020/10/24 18:38
#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>
#include <algorithm>
#include <cstdlib>
#include <stack>
#include <queue> 
using namespace std;
int n,m,t,map[10][10],a[10][10],dx[]={0,0,1,-1},dy[]={-1,1,0,0},kx,ky,jx,jy,cnt;
void dfs(int x,int y)
{
	for(int j=0;j<4;j++)
	{
		if(map[x+dx[j]][y+dy[j]]==0&&a[x+dx[j]][y+dy[j]]!=1)
		{
			a[x][y]=1;
			if(x==jx&&y==jy)++cnt;	
			else dfs(x+dx[j],y+dy[j]);
			a[x][y]=0;
		}
	}
}
int main()
{
	scanf("%d%d%d%d%d%d%d",&n,&m,&t,&kx,&ky,&jx,&jy);
	for(int i=0;i<t;++i)
	{
		int l,u;
		scanf("%d%d",&l,&u);
		map[l][u]=1;
	}
	dfs(kx,ky);
	printf("%d",cnt);
	return 0; 
}
2020/10/24 18:38
加载中...