90pts求助
  • 板块P1605 迷宫
  • 楼主Xianyujunzhu
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/8/7 20:07
  • 上次更新2024/8/7 21:04:17
查看原帖
90pts求助
1288602
Xianyujunzhu楼主2024/8/7 20:07
#include<bits/stdc++.h>
using namespace std;
int n,m,t,sx,sy,fx,fy;
int a[6][6]={};
int ans=0;
void dfs(int x,int y){
	if(x<1||x>n) return;
	if(y<1||y>m) return;
	if(x==fx&&y==fy){
		ans++;
		return;
	}
	if(a[x][y]==1||a[x][y]==2) return;
	a[x][y]=2;
	dfs(x+1,y);
	dfs(x,y+1);
	dfs(x-1,y);
	dfs(x,y-1);
	a[x][y]=0;
}
int main(){
	cin>>n>>m>>t;
	cin>>sx>>sy>>fx>>fy;
	for(int i=1;i<=t;i++){
		int ix,iy;
		cin>>ix>>iy;
		a[ix][iy]=1;
	}
	if(a[n][m]==1){
		cout<<0;
		return 0;
	}
	dfs(sx,sy);
	cout<<ans;
	return 0;
}
2024/8/7 20:07
加载中...