巨弱在线求助
  • 板块P2360 地下城主
  • 楼主wd_dw
  • 当前回复3
  • 已保存回复3
  • 发布时间2020/10/30 21:43
  • 上次更新2023/11/5 09:28:33
查看原帖
巨弱在线求助
161777
wd_dw楼主2020/10/30 21:43

求dalao们为什么WA一个点

#include<bits/stdc++.h>
using namespace std;
char cbh[30+10][30+10][30+10];
int l,r,c,xm,ym,zm;
bool saz[30+10][30+10][30+10];
int dx[]={1,0,-1,0,0,0};
int dy[]={0,1,0,-1,0,0};
int dz[]={0,0,0,0,-1,1};
void search(int x,int y,int z,int tim){
	if(x<0 || x>=l || y<0 || y>=r || z<0 || z>=c){
		return ;
	}
	if(cbh[x][y][z]=='E'){
		cout<<"Escaped in "<<tim<<" minute(s)."<<endl;
		exit(0);
	}
	saz[x][y][z]=true;
	for(int i=0;i<6;i++){
		int xx,yy,zz;
		xx=x+dx[i];
		yy=y+dy[i];
		zz=z+dz[i];
		if((cbh[xx][yy][zz]=='E' || cbh[xx][yy][zz]=='.') && saz[xx][yy][zz]==false){
			search(xx,yy,zz,tim+1);
		}
	}
}
int main(){
	cin>>l>>r>>c;
	for(int i=0;i<l;i++){
		for(int j=0;j<r;j++){
			for(int k=0;k<c;k++){
				cin>>cbh[i][j][k];
				if(cbh[i][j][k]=='S'){
					xm=i;
					ym=j;
					zm=k;
				}
			}
		}
	}
	search(xm,ym,zm,0);
	cout<<"Trapped!"<<endl;
	return 0;
}

WAW

2020/10/30 21:43
加载中...