爆0求助
查看原帖
爆0求助
1472544
yuhaochen311楼主2025/2/7 13:33
#include<bits/stdc++.h>
using namespace std;
const int N=1e4+3;
int dx[4]={0,1,0,-1};
int dy[4]={1,0,-1,0};
long long t,k,n,m,x,y,d,s,v[N][N];
char a[N][N];
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cin>>t;
	while(t--){
		memset(v,0,sizeof(v));
		s=0;
		cin>>n>>m>>k;
		cin>>x>>y>>d;
		v[x][y]=1;
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++){
				cin>>a[i][j];
			}
		}
		while(k--){
			if(dx[d]+x>=1&&dx[d]+x<=n&&dy[d]+y>=1&&dy[d]+y<=m&&a[dx[d]+x][dy[d]+y]!='x'){
				x+=dx[d];
				y+=dy[d];
				v[x][y]=1;
			}
			else{
				int l=(d+1)%4;
				d=l;
			}
		}
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++){
				if(v[i][j]==1){
					s++;
				}
			}
		}
		cout<<s<<"\n";
	}		
	return 0;
}

求大佬纠错

2025/2/7 13:33
加载中...