_Xiaoyao_ @ 2024-12-20 21:38:22
#include<bits/stdc++.h>
using namespace std;
int xc,yc,x,y,x9,y9,n,m,k,t,d,sum=0;
char a[100][100];
bool b[100][100]={0};
int main(){
cin>>t;
while(t--){
cin>>n>>m>>k>>xc>>yc>>d;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)cin>>a[i][j];
x=xc;
y=yc;
for(int i=1;i<=k;i++){
if(d==0)y9=y+1;
else if(d==1)x9=x+1;
else if(d==2)y9=y-1;
else x9=x-1;
if(x9>=1&&x9<=n&&y9>=1&&y9<=m&&a[x9][y9]=='.'&&b[x9][y9]==0){
sum++;
b[x][y]=1;
}
else {
d=(d+1)%4;
}
}
cout<<sum<<endl;
sum=0;
}
}
别人说用模拟???
by _Xiaoyao_ @ 2024-12-20 21:39:38
@Xiaoyao 真心求助,一定要帮我呀
by lan_chance @ 2024-12-22 10:09:48
你这光是数组大小都没法过好像。。。。
这边建议先去维基上学下搜索或者其他方法吧