#include<bits/stdc++.h>
using namespace std;
char dl[107][107];
int jg[107][107];
int n,m;
void work() {
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
if(dl[i][j]=='*') {
if((i!=0&&j!=0)&&(i!=n-1&&j!=m-1)) {
jg[i-1][j-1]++;
jg[i][j-1]++;
jg[i+1][j-1]++;
jg[i-1][j]++;
jg[i+1][j]++;
jg[i-1][j+1]++;
jg[i][j+1]++;
jg[i+1][j+1]++;
} else if((i==0&&j!=0)&&j!=m-1) {
jg[i][j-1]++;
jg[i][j+1]++;
jg[i+1][j-1]++;
jg[i+1][j]++;
jg[i+1][j+1]++;
} else if((i!=0&&j==0)&&i!=n-1){
jg[i-1][j]++;
jg[i+1][j]++;
jg[i-1][j+1]++;
jg[i][j+1]++;
jg[i+1][j+1]++;
}
else if(i!=0&&j==m-1&&i!=n-1){
jg[i-1][j]++;
jg[i-1][j-1]++;
jg[i-1][j+1]++;
jg[i][j-1]++;
jg[i][j+1]++;
}
else if(i==0&&j==0){
jg[i][j+1]++;
jg[i+1][j]++;
jg[i+1][j+1]++;
}
else if(i==n-1&&j==m-1){
jg[i-1][j]++;
jg[i][j-1]++;
jg[i-1][j-1]++;
}
else if(i==0&&j==m-1){
jg[i+1][j]++;
jg[i+1][j-1]++;
jg[i][j-1]++;
}
else if(i==n-1&&j==0){
jg[i-1][j]++;
jg[i-1][j+1]++;
jg[i][j+1]++;
}
else if(i==n-1&&j!=0&&j!=m-1){
jg[i][j-1]++;
jg[i-1][j-1]++;
jg[i-1][j]++;
jg[i-1][j+1]++;
jg[i][j+1]++;
}
}
}
}
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
if(dl[i][j]=='*') cout<<dl[i][j];
else cout<<jg[i][j];
}
cout<<endl;
}
}
int main() {
cin>>n>>m;
for(int i=0; i<n; i++) {
for(int j=0; j<m; j++) {
cin>>dl[i][j];
}
}
work();
}
60分,求助