#include #include using namespace std; const int MAXS = 100; int rings[MAXS+2][MAXS+2]; int main() { int n, m; char ch; cin >> n >> m; for(int i=0; i> ch; if (ch == '.') rings[i+1][j+1] = 0; else rings[i+1][j+1] = -1; } bool changes = true; int rnum = 0; while (changes) { changes = false; rnum++; for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { if (rings[i][j] == -1 && (rings[i-1][j] == rnum-1 || rings[i][j-1] == rnum-1 || rings[i+1][j] == rnum-1 || rings[i][j+1] == rnum-1)) { rings[i][j] = rnum; changes = true; } } } } int width = 2; string blanks = ".."; if (rnum>=10) { width = 3; blanks = "..."; } for(int i=1; i<=n; i++) { for(int j=1; j<=m; j++) { if (rings[i][j] == 0) cout << blanks; else if(rings[i][j] >= 10) cout << blanks.substr(0,width-2) << rings[i][j]; else cout << blanks.substr(0,width-1) << rings[i][j]; } cout << endl; } }