爆零
  • 板块P1605 迷宫
  • 楼主123uuu
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/11/4 15:59
  • 上次更新2023/11/4 17:29:18
查看原帖
爆零
539712
123uuu楼主2023/11/4 15:59
#include<bits/stdc++.h>
using namespace std;
int mp[100][100],sx,sy,fx,fy,p=0,c,k,z,cx,cy;
bool vist[100][100];
int ax[6]={-1,0,1,0};
int ay[6]={0,1,0,-1};
void mg(int nx,int ny){
	int i;
	if(nx==fx&&ny==fy){
		p++;
		return;	
	}
	for(i=0;i<4;++i){
		int tx,ty;
		tx+=ax[i];
		ty+=ay[i];
		if(mp[tx][ty]==1)continue;
		if(vist[tx][ty]==1)continue;
		if(tx<=0||tx>c||ty<=0||ty>k)continue;
		vist[tx][ty]=1;
		mg(tx,ty);
		vist[tx][ty]=0;
	}
	
}
int main(){
	cin>>c>>k>>z;
	cin>>sx>>sy>>fx>>fy;
	for(int i=1;i<=c;++i){
		cin>>cx>>cy;
		mp[cx][cy]=1;
	}
	mg(sx,sy);
	cout<<p;
return 0;
}
2023/11/4 15:59
加载中...