80分,测试点7,8错了,求调
  • 板块P1605 迷宫
  • 楼主lyyz202445Zyh
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/12/27 22:08
  • 上次更新2024/12/28 11:11:49
查看原帖
80分,测试点7,8错了,求调
1412553
lyyz202445Zyh楼主2024/12/27 22:08
#include<bits/stdc++.h>
using namespace std;int n,m,t,sx,sy,fx,fy,b[4][2]={{1,0},{-1,0},{0,1},{0,-1}},a[7][7]; int x,y,ans;
int abc(){
	if(x==fx&&y==fx){
		ans++;
	}
	else
	{
		for(int i=0;i<=3;i++){
	if(x+b[i][0]<=n&&x+b[i][0]>0&&y+b[i][1]<=n&&y+b[i][1]>0&&a[x+b[i][0]][y+b[i][1]]==0){
		x+=b[i][0];
		y+=b[i][1];
		a[x][y]=1;
		abc();a[x][y]=0;
		x-=b[i][0];
		y-=b[i][1];}
	}}return 0;
}
int main(){

	cin>>n>>m>>t>>sx>>sy>>fx>>fy;
	for(int i=1;i<=t;i++){
		cin>>x>>y;
		a[x][y]=1;
	}x=sx;y=sy;a[x][y]=1;
	for(int i=0;i<=3;i++){
	if(x+b[i][0]<=n&&x+b[i][0]>0&&y+b[i][1]<=n&&y+b[i][1]>0&&a[x+b[i][0]][y+b[i][1]]==0){
		x+=b[i][0];
		y+=b[i][1];
		a[x][y]=1;
		abc();
		x-=b[i][0];
		y-=b[i][1];a[x][y]=0;
	}
	
	}cout<<ans;
	return 0;
}
2024/12/27 22:08
加载中...