通过时间:2019.3.22
测评地址:https://www.luogu.org/problemnew/show/P2670
耗时/内存:25ms, 932KB
纯模拟,代码如下:
//纯模拟
#include
#include
#include
using namespace std;
char a[110][110];
char b[110][110];
long long n,m,i,j;//n行m列
void fuc()//周围加一遍
{
b[i-1][j]++;
b[i-1][j-1]++;
b[i-1][j+1]++;
b[i+1][j]++;
b[i+1][j-1]++;
b[i+1][j+1]++;
b[i][j+1]++;
b[i][j-1]++;
}
int main()
{
cin>>n>>m;
// memset(b,0,sizeof(b));
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
cin>>a[i][j];
if(a[i][j]=='*')
{
b[i][j]=-9;//标记
fuc();//周围加一遍
}
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
if(b[i][j]<0)//输出是大问题,原来按 %d 输出,
// * 输出42
// %c 输出数字ascll码对应值。。。
{
b[i][j]='*';
printf("%c",b[i][j]);
}
else
printf("%d",b[i][j]);
}
printf("\n");
}
return 0;
}