社区讨论
求助求助,请dalao指教
P1189[COI 2001] SEARCH参与者 7已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @mi86fvcq
- 此快照首次捕获于
- 2025/11/21 09:23 4 个月前
- 此快照最后确认于
- 2025/11/21 09:23 4 个月前
白名蒟蒻表示好无奈呀,为啥会只有30分呢。。。真不知道哪里错了
CPP#include<bits/stdc++.h>
int r,c,qdh,qdl,bz,n,js1,js2;
int ydh[1002],ydl[1002];
char dt[52][53],sr[8];
void ss(int zz,int wzh,int wzl){
if(zz==n+1){
dt[wzh][wzl]='*';
return;
}
wzh+=ydh[zz];
wzl+=ydl[zz];
while(dt[wzh][wzl]!='X'){
if(1>wzh||wzh>r||1>wzl||wzl>c)
break;
ss(zz+1,wzh,wzl);
wzh+=ydh[zz];
wzl+=ydl[zz];
}
}
int main()
{
scanf("%d%d",&r,&c);
for(js1=1;js1<=r;js1++){
scanf("%s",dt[js1]+1);
if(bz==0) for(js2=1;js2<=c;js2++)
if(dt[js1][js2]=='*'){
qdh=js1;
qdl=js2;
dt[js1][js2]='.';
bz=1;
break;
}
}
scanf("%d",&n);
for(js1=1;js1<=n;js1++){
scanf("%s",sr+1);
if(sr[1]=='E')
ydl[js1]=1;
if(sr[1]=='S')
ydh[js1]=1;
if(sr[1]=='W')
ydl[js1]=-1;
if(sr[1]=='N')
ydh[js1]=-1;
}
ss(1,qdh,qdl);
for(js1=1;js1<=r;js1++)
printf("%s\n",dt[js1]+1);
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...