40分
  • 板块P1605 迷宫
  • 楼主jfyjfy
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/12/27 19:24
  • 上次更新2024/12/27 22:52:16
查看原帖
40分
1321663
jfyjfy楼主2024/12/27 19:24
#include<iostream>
using namespace std;
int n,m,t,s;
int x1,y1,x2,y2;
bool a[6][6];
int dx[4]={1,-1,0,0},
	dy[4]={0,0,1,-1};
int dfs(int x1,int y1){
	for(int i=0;i<=3;i++){
		int x=x1+dx[i],y=y1+dy[i];
		if(x>0&&x<=n&&y>0&&y<=m&& !a[x][y]){
			a[x][y]=true;
			if(x==x2&&y==y2){
				s++;
			}else dfs(x,y);
		}
	}
}
int main(){
	cin>>n>>m>>t>>x1>>y1>>x2>>y2; 
	for(int i=1;i<=t;i++){
		int q,w;
		cin>>q>>w;
		a[q][w]=true;
	}
	dfs(x1,y1);
	cout<<s;
	return 0;
}

2024/12/27 19:24
加载中...