社区讨论

闹鬼了,输出结果一样但是WA???

P1605迷宫参与者 4已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
9 条
当前快照
1 份
快照标识符
@mhja2xdn
此快照首次捕获于
2025/11/03 23:11
4 个月前
此快照最后确认于
2025/11/03 23:11
4 个月前
查看原帖
先上代码
CPP
#include<iostream>
using namespace std;
int N,M,T,SX,SY,FX,FY,cnt;
int movex[4]={0,0,1,-1},movey[4]={1,-1,0,0};
bool b[6][6];
void dfs(int nowx,int nowy)
{
	if(nowx==FX&&nowy==FY)
	{
		cnt++;
		return;
	}
	for(int i=0;i<4;i++)
	{
		if(b[nowx+movex[i]][nowy+movey[i]]==0)
		{
			b[nowx+movex[i]][nowy+movey[i]]=1;
			dfs(nowx+movex[i],nowy+movey[i]);
			b[nowx+movex[i]][nowy+movey[i]]=0;
		}
	}
	return;
}
int main()
{
	cin>>N>>M>>T>>SX>>SY>>FX>>FY;
	for(int i=0;i<=N+1;i++)
		b[i][0]=b[i][N+1]=1;
	for(int i=0;i<=M+1;i++)
		b[0][i]=b[M+1][i]=1;
	for(int i=1;i<=T;i++)
	{
		int x,y;
		cin>>x>>y;
		b[x][y]=1;
	}
	b[SX][SY]=1;
	dfs(SX,SY);
	cout<<cnt;
	//cout<<4846;
	return 0;
}
个人觉得没有任何问题,但是提交上去前六个点AC,后面的都WA。
我下载#7的数据,诡异的来了,in是5 5 0 1 1 2 2,out是4846。但我在dev里运行,输出的也是4846(你们也可以用我的代码跑一趟)。我后来急了把cnt给注释掉,直接输出4846,只有#7过了,这说明这下载的数据也没问题。
闹鬼了,这为啥会WA啊?

回复

9 条回复,欢迎继续交流。

正在加载回复...