NOIP2015-普及组复赛-第2题-扫雷游戏

来源:互联网 发布:python 量化交易策略 编辑:程序博客网 时间:2024/05/16 11:17
#include<bits/stdc++.h>
using namespace std;
const int inf=-1;
char a[1000][1000];
int b[1000][1000];
int main()
{
int n,m;
int i,j;
int count;
int ii,jj;
cin>>n>>m;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
cin>>a[i][j];
if(a[i][j]=='*')
b[i][j]=inf;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
count=0;
if(a[i][j]=='*')
continue;
for(ii=-1;ii<=1;ii++)
{
for(jj=-1;jj<=1;jj++)
{
if(i+ii<1||j+jj<1||i+ii>n||j+jj>m)
continue;
if(ii==0&&jj==0)
continue;
if(a[i+ii][j+jj]=='*')
{
count++;
}
}
}
b[i][j]=count;
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
if(b[i][j]==inf)
printf("*");
else printf("%d",b[i][j]);
}
printf("\n");
}
return 0;
}