#includechar str[105][105]; int main() { int n,m,i,j,k,t,cnt; scanf("%d %d",&n,&m); getchar(); for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { scanf("%c",&str[i][j]); } getchar(); } for(i=1;i<=n;i++)//这里从 1 开始就可以避免考虑边缘的雷 { for(j=1;j<=m;j++) { cnt=0; if(str[i][j]=='*') { continue; } else { for(k=i-1;k<=i+1;k++)//考虑没有雷的地方周围有没有雷 { for(t=j-1;t<=j+1;t++) { if(str[k][t]=='*') { cnt++; } } } str[i][j]=cnt+'0'; } } } for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { printf("%c",str[i][j]); } puts(""); } return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)