Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:写了1个小时的程序,却花了3个多小时都没发现错误,谁能帮我看一下程序,先谢了In Reply To:写了1个小时的程序,却花了3个多小时都没发现错误,谁能帮我看一下程序,先谢了 Posted by:fjnu_jxd_008 at 2005-10-07 17:47:14 > 程序如下: > #include<stdio.h> > char data[]="ESWN"; > int d[200],room[200][200],a,b,x[200],y[200]; > int check(int k,int n) > { > int t,i; > if(d[k]==1) > { > t=x[k]; > for(i=1;i<=n;i++) > { > t++; > if(t>a) > return -1; > if(room[y[k]][t]) > return room[y[k]][t]; > } > room[y[k]][x[k]]=0; > room[y[k]][t]=k; > x[k]=t; > return 0; > } > if(d[k]==2) > { > t=y[k]; > for(i=1;i<=n;i++) > { > t--; > if(t<=0) > return -1; > if(room[t][x[k]]) > return room[t][x[k]]; > } > room[y[k]][x[k]]=0; > room[t][x[k]]=k; > y[k]=t; > return 0; > } > if(d[k]==3) > { > t=x[k]; > for(i=1;i<=n;i++) > { > t--; > if(t<=0) > return -1; > if(room[y[k]][t]) > return room[y[k]][t]; > } > room[y[k]][x[k]]=0; > room[y[k]][t]=k; > x[k]=t; > return 0; > } > t=y[k]; > for(i=1;i<=n;i++) > { > t++; > if(t>b) > return -1; > if(room[t][x[k]]) > return room[t][x[k]]; > } > room[y[k]][x[k]]=0; > room[t][x[k]]=k; > y[k]=t; > return 0; > } > int main() > { > int i,j,k,n,m,N,t,s; > char c; > scanf("%d",&N); > for(i=1;i<=N;i++) > { > scanf("%d %d",&a,&b); > for(j=1;j<=b;j++) > for(k=1;k<=a;k++) > room[j][k]=0; > scanf("%d %d",&n,&m); > for(j=1;j<=n;j++) > { > scanf("%d %d %c",&x[j],&y[j],&c); > room[y[j]][x[j]]=j; > for(k=0;k<=3;k++) > if(c==data[k]) > break; > d[j]=k+1; > } > for(j=1;j<=m;j++) > { > scanf("%d %c %d",&t,&c,&s); > if(c=='L') > { > s%=4; > d[t]-=s; > if(d[t]<=0) > d[t]+=4; > } > else if(c=='R') > { > s%=4; > d[t]+=s; > d[t]%=4; > if(d[t]==0) > d[t]=4; > } > else > { > k=check(t,s); > if(k!=0) > break; > } > } > if(k==-1) > printf("Robot %d crashes into the wall\n",t); > else if(k==0) > printf("OK\n"); > else > printf("Robot %d crashes into robot %d\n",t,k); > for(k=j+1;k<=m;k++) > scanf("%d %c %d",&t,&c,&s); > } > return 0; > } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator