0分,求助!
  • 板块P1605 迷宫
  • 楼主SY_Nightmare
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/6/27 17:25
  • 上次更新2023/11/3 12:18:47
查看原帖
0分,求助!
780757
SY_Nightmare楼主2023/6/27 17:25
#include<bits/stdc++.h>
using namespace std;
int n,m,t;
int ans=0;
int az,ax,ac,av;
int c[6][6];
int a[6][6];
int ab,an;
int dx[]={0,0,0,-1,1};
int dy[]={0,-1,1,0,0};
struct point{
	int x,y;
};
void dfs(int x,int y)
{
	if(x==ac&&y==av)
	{
		ans++;
		return;
	}
	for(int i=1;i<=4;i++)
	{
		int vy,vx;
		vy=y+dy[i];
		vx=x+dx[i];
		if(a[vx][vy]==0&&c[vx][vy]==0)
		{
			a[vx][vy]=1;
			dfs(vx,vy);
			a[vx][vy]=0;
		}
	}
}
int main()
{
	cin>>n>>m>>t;
	cin>>az>>ax>>ac>>av;
	for(int i=1;i<=t;i++)
	{
		cin>>ab>>an;
		c[ab][an]=1;
	}
	dfs(az,ax);
	cout<<ans;
	return 0;
}
2023/6/27 17:25
加载中...