50分求改
  • 板块P1605 迷宫
  • 楼主dgz61
  • 当前回复0
  • 已保存回复0
  • 发布时间2025/1/18 18:54
  • 上次更新2025/1/18 21:39:09
查看原帖
50分求改
1064274
dgz61楼主2025/1/18 18:54
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m,t,a[10][10],sx,sy,fx,fy,x,y,ans=0;
void dfs(ll x,ll y){
	if(a[x][y]==1) return ;
	else if(x==fx && y==fy){
		ans++;
		return ;
	}
	else{
		a[x][y]=1;
		if(x-1!=0) dfs(x-1,y);
		if(x+1!=n+1) dfs(x+1,y);
		if(y-1!=0) dfs(x,y-1);
		if(y+1!=m+1) dfs(x,y+1);
		return ;
	}
}
int main(){
	cin>>n>>m>>t>>sx>>sy>>fx>>fy;
	for(ll i=1;i<=t;i++){
		cin>>x>>y;
		a[x][y]=1;
	}
	dfs(sx,sy);
	cout<<ans;
	return 0;
}
2025/1/18 18:54
加载中...