社区讨论
60分WA!求调!
P11228[CSP-J 2024] 地图探险参与者 3已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @m4o8m107
- 此快照首次捕获于
- 2024/12/14 21:53 去年
- 此快照最后确认于
- 2025/11/04 12:50 4 个月前
代码
CPP#include <bits/stdc++.h>
using namespace std;
bool vis[1001][1001];
int t,turn1[4]={0,1,0,-1},turn2[4]={1,0,-1,0},x[7],y[7],d[7],n,m,k;//0 right,1 under,2 left,3 on
int main(){
cin>>t;
for (int l=1;l<=t;l++){
int ans=1;
memset (vis,0,sizeof vis);
char a[1001][1001];
cin>>n>>m>>k>>x[l]>>y[l]>>d[l];
for (int i=1;i<=n;i++){
for (int j=1;j<=m;j++){
cin>>a[i][j];
}
}
vis[x[l]][y[l]]=1;
while (k>0){
int xx=x[l]+turn1[d[l]],yy=y[l]+turn2[d[l]];
if (a[xx][yy]=='.'){
if (!vis[xx][yy])
ans++;vis[xx][yy]=1;
x[l]=xx;y[l]=yy;
}else{
d[l]=(d[l]+1)%4;
}
k--;
}
cout<<ans<<endl;
}
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...