求调
查看原帖
求调
1179906
hhy8399楼主2024/12/8 12:36
#include <bits/stdc++.h>
using namespace std;

const int MAXN = 1e3 + 10;

int T;
int n,m,k,x,y,d,ans;
char mp[MAXN][MAXN];

void run() {
	ans = 1;
	scanf("%d %d %d %d %d %d",&n,&m,&k,&x,&y,&d);
	for(int i = 1;i <= n;i ++) {
		for(int j = 1;j <= m;j++) {
			cin >> mp[i][j];
		}
	}
	mp[1][1] = 'K';
	for(int i = 1;i <= k;i++) {
		int x0 = x,y0 = y;
		ans ++;
		if(d == 0) {
			y ++;
		}
		if(d == 1) {
			x ++;
		}
		if(d == 2) {
			y --;
		}
		if(d == 3) {
			x --;
		}
		if(mp[x][y] == 'K') {
			ans --;
		}
		if(mp[x][y] == 'x' || x <= 0 || y <= 0 || x > n || y > m) {
			ans --;
			x = x0,y = y0;
			d ++;
			d %= 4;
		}
		mp[x][y] = 'K';
/*		printf("times = %d ; x = %d ; y = %d ; d = %d; ans = %d;\n",i,x,y,d,ans);
		for(int i = 1;i <= n;i++) {
			for(int j = 1;j <= m;j++) {
				printf("%c",mp[i][j]);
			}
			printf("\n");
		}
		printf("---------------------------------------\n");*/
	}
	printf("%d\n",ans);
/*	for(int i = 1;i <= n;i++) {
		for(int j = 1;j <= m;j++) {
			printf("%c",mp[i][j]);
		}
		printf("\n");
	}*/
//	system("pause");
}

int main() {
	ios::sync_with_stdio(0);cin.tie(0);
	cin >> T;
	while (T --) {
		run();
	}
	return 0;
}
2024/12/8 12:36
加载中...