请求添加HACK数据
  • 板块P1605 迷宫
  • 楼主ForMyDream
  • 当前回复3
  • 已保存回复3
  • 发布时间2022/6/25 08:28
  • 上次更新2023/10/27 22:38:44
查看原帖
请求添加HACK数据
502758
ForMyDream楼主2022/6/25 08:28

数据:

输入
4 2 1
1 1 4 2
4 1
输出:

4

原因:

这是两种相对的写法,一种正确(代码上的),另一种就是错误的(注释上的) 可是两种写法都AC了 事实上第二种写法错了 用HACK数据可以卡掉(见代码)

#include<iostream>
using namespace std;
int map[6][6];
int d[4][2]={{1,0},{-1,0},{0,1},{0,-1}};
int n,m,t,ans,sx,sy,ex,ey;
void dfs(int x,int y){
	if (x==ex&&y==ey){
		ans++;
		return;
	} 
	for (int i=0;i<4;i++){
		int dx=x+d[i][0];
		int dy=y+d[i][1];
		if (dx>0&&dy>0&&dx<=n&&dy<=m&&map[dx][dy]!=0){
		//if (dx>0&&dy>0&&dx<=m&&dy<=n&&map[dx][dy]!=0) 
		//这是两种相对的写法,一种正确(代码上的),另一种就是错误的(注释上的)
		//可是两种写法都AC了 事实上第二种写法错了 用HACK数据可以卡掉 
			map[x][y]=0;
			dfs(dx,dy);
			map[x][y]=1;
		}
	}
}
int main(){
	cin>>n>>m>>t;
	cin>>sx>>sy>>ex>>ey;
	for (int i=1;i<=n;i++){
		for (int j=1;j<=m;j++){
			map[i][j]=1;
		}
	}
	for (int i=1;i<=t;i++){
		int x,y;cin>>x>>y;
		map[x][y]=0;
	}
	dfs(sx,sy);
	cout<<ans;
	return 0;
} 

添加数据要找哪一位管理员大大呀,能有好心人帮我@一下吗?

2022/6/25 08:28
加载中...