不懂 样例全过 0分
查看原帖
不懂 样例全过 0分
940105
hp1596321楼主2023/3/28 21:18
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>

char arr[1000][1000] = { 0 };
int arr1[1000][1000] = { 0 };

int main()
{
	int n = 0;
	int m = 0;
	scanf("%d%d", &n, &m);
	getchar();

	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
		{
			scanf("%c", &arr[i][j]);
			arr1[i][j] = 1;//相当于flag
		}
		getchar();
	}
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
		{
			if (arr[i][j] == '#'&&arr1[i][j] == 1)
			{
				if (arr[i][j + 1] == '.')
				{
					arr[i][j + 1] = '#';
					arr1[i][j + 1] = 2;//新的#就标记成2,原来的#一直都是1
				}
				if (arr[i + 1][j] == '.')
				{
					arr[i + 1][j] = '#';
					arr1[i + 1][j] = 2;
				}
				if (arr[i + 1][j + 1] == '.')
				{
					arr[i + 1][j + 1] = '#';


					arr1[i + 1][j + 1] = 2;
				}



			}
			printf("%c", arr[i][j]);
		}
		printf("\n");
	}


	return 0;
}
2023/3/28 21:18
加载中...