CF - G. Fall Down

#include<bits/stdc++.h>
using namespace std;
const int N = 1e2 + 10;
typedef pair<int, int> PII;
#define x first
#define y second
int n, m;
char s[N][N];
int bfs(PII st)
{
	queue<PII>q;
	q.push(st);
	while(q.size())
	{
		PII a = q.front();
		q.pop();
		int x = a.x + 1, y = a.y;
		if(s[x][y] == '.'&& x <= n)
		{
			q.push({x, y});
		}
		else {
			s[st.x][st.y] = '.';
			s[a.x][a.y] = '*';
			return 0;
		}
	}
	return 0;
}
int main() {
	int t;
	cin >> t;
	while (t --) {
		cin >> n >>m;
		for(int i = 1; i <= n; i ++)
		{
			for(int j = 1; j <= m; j ++)
			{
				cin >> s[i][j];
			}
		}
		for(int i = n; i >= 1; i --)
		{
			for(int j = 1; j <= m; j ++)
			{
				if(s[i][j] == '*')
				{
					bfs({i,j});
				}
			}
		}
		for(int i = 1; i <= n; i ++)
		{
			for(int j = 1; j <= m; j ++)
			{
				cout << s[i][j];
			}
			cout << endl;
		}
	}
	return 0;
}
全部评论

相关推荐

评论
1
收藏
分享
牛客网
牛客企业服务