30分,求调
  • 板块P1605 迷宫
  • 楼主Rui_1911
  • 当前回复1
  • 已保存回复1
  • 发布时间2025/1/15 15:22
  • 上次更新2025/1/15 19:35:21
查看原帖
30分,求调
598652
Rui_1911楼主2025/1/15 15:22

30分求调

#include<bits/stdc++.h>
using namespace std;
int n,m,t,x[6][6],t1,t2,sx,sy,fx,fy,ans=0;
void dfs(int a,int b){
	if(a==fx&&b==fy){
		ans++;
		return;
	}
	if(a+1<=n&&x[a+1][b]==0){
		x[a+1][b]=1;
		dfs(a+1,b);
		x[a+1][b]=0;
	}
	if(a-1>=0&&x[a-1][b]==0){
		x[a-1][b]=1;
		dfs(a-1,b);
		x[a-1][b]=0;
	}
	if(b+1<=n&&x[a][b+1]==0){
		x[a][b+1]=1;
		dfs(a,b+1);
		x[a][b+1]=0;
	}
	if(b-1>=0&&x[a][b-1]==0){
		x[a][b-1]=1;
		dfs(a,b-1);
		x[a][b-1]=0;
	}
}
int main(){
	cin>>n>>m>>t;
	memset(x,0,sizeof(x));
	cin>>sx>>sy>>fx>>fy;
	for(int i=1;i<=t;i++){
		cin>>t1>>t2;
		x[t1][t2]=1;
	}
	dfs(sx,sy);
	cout<<ans;
	return 0;
}


2025/1/15 15:22
加载中...