Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

Re:代码能过各种样例,为何还是WA,求大神检查

Posted by zxy021222 at 2018-05-20 15:25:17 on Problem 2251
In Reply To:代码能过各种样例,为何还是WA,求大神检查 Posted by:zxy021222 at 2018-05-20 15:22:24
> #include<iostream>
> #include<queue>
> #include<string.h>
> using namespace std;
> int c,n,m;
> int book[101][101][101];
> char mp[101][101][101];
> int dx[4]={0,0,1,-1};
> int dy[4]={1,-1,0,0};
> struct node{
> 	int x;
> 	int y;
> 	int f;
> 	int step;
> };
> int main(){
> 	while(cin>>c>>n>>m){
> 		if(c==0&&n==0&&m==0){
> 			break;
> 		}
> 		
> 		queue<node> q;
> 		int i,j,k,sf,sx,sy,ef,ex,ey;
> 		for(i=1;i<=c;i++){
> 			for(j=1;j<=n;j++){
> 				for(k=1;k<=m;k++){
> 					cin>>mp[i][j][k];
> 					if(mp[i][j][k]=='S'){
> 						sf=i;
> 						sx=j;
> 						sy=k;
> 					}
> 					if(mp[i][j][k]=='E'){
> 						ef=i;
> 						ex=j;
> 						ey=k;
> 						mp[i][j][k]='.';
> 					}
> 				}
> 			}
> 		}
> 		node start;
> 		start.f=sf;
> 		start.step=0;
> 		start.x=sx;
> 		start.y=sy;
> 		q.push(start);
> 		book[sf][sx][sy]=1;
> 		while(q.empty()==false){
> 			node se=q.front();
> 			q.pop();
> 			for(i=0;i<=3;i++){
> 				int xx=se.x+dx[i];
> 				int yy=se.y+dy[i];
> 				if(xx>=1&&xx<=n&&yy>=1&&yy<=m&&book[se.f][xx][yy]==0&&mp[se.f][xx][yy]=='.'){
> 					node newp;
> 					newp.f=se.f;
> 					newp.step=se.step+1;
> 					newp.x=xx;
> 					newp.y=yy;
> 					book[se.f][xx][yy]=1;
> 					q.push(newp);
> 					if(newp.f==ef&&newp.x==ex&&newp.y==ey){
> 						cout<<"Escaped in "<<newp.step<<" minute(s)."<<endl;
> 						break;
> 					}
> 				}
> 			}
> 			
> 			node newp;
> 			newp.f=se.f-1;
> 			newp.step=se.step+1;
> 			newp.x=se.x;
> 			newp.y=se.y;
> 			if(newp.f>=1&&book[newp.f][newp.x][newp.y]==0&&mp[newp.f][newp.x][newp.y]=='.'){
> 				book[newp.f][newp.x][newp.y]=1;
> 				q.push(newp);
> 				if(newp.f==ef&&newp.x==ex&&newp.y==ey){
> 					cout<<"Escaped in "<<newp.step<<" minute(s)."<<endl;
> 					break;
> 				}
> 			}
> 			
> 			node newp2;
> 			newp2.f=se.f+1;
> 			newp2.step=se.step+1;
> 			newp2.x=se.x;
> 			newp2.y=se.y;
> 			if(newp2.f<=c&&book[newp2.f][newp2.x][newp2.y]==0&&mp[newp2.f][newp2.x][newp2.y]=='.'){
> 				book[newp2.f][newp2.x][newp2.y]=1;
> 				q.push(newp2);
> 				if(newp2.f==ef&&newp2.x==ex&&newp2.y==ey){
> 					cout<<"Escaped in "<<newp2.step<<" minute(s)."<<endl;
> 					break;
> 				}
> 			}
> 		}
> 		
> 		if(q.empty()==true)
> 		cout<<"Trapped!"<<endl; 
> 		
> 		memset(book,0,sizeof(book));
> 	}
>     return 0;  
> } 

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator