Paste Search Dynamic
Recent pastes
case
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. char a[105][105];
  4. int b[105][105];
  5. int dx[] = {-1, -1, 0, 1, 1, 1, 0, -1};
  6. int dy[] = {0, 1, 1, 1, 0, -1, -1, -1};
  7.  
  8. int main() {
  9.         int n , m;
  10.         string s;
  11.         int case =1;
  12.         while(cin>>n>>m){
  13.                 if(n==0&&m==0){
  14.                         break;
  15.                 }
  16.                 for ( int i = 0 ; i< n ; i++){
  17.                         cin >> s;
  18.                         for(int j = 0 ; j < m ; j++){
  19.                                 a[i][j]=s[j];
  20.                         }
  21.                 }
  22.                 for ( int i = 0 ; i < n ; i++){
  23.                         for(int j = 0 ; j < m ; j++){
  24.                                 if(a[i][j]=='*'){
  25.                                         b[i][j]=-1;
  26.                                 }else{
  27.                                         for(int k = 0 ; k < 8 ; k++){
  28.                                                 int x = i + dx[k];
  29.                                                 int y = j + dy[k];
  30.                                                 if (x>=0&&x<n&&y>=0&&y<m&&a[x][y]=='*'){
  31.                                                         b[i][j]++;
  32.                                                 }
  33.                                         }
  34.                                 }
  35.                         }
  36.                 }
  37.                 if (case > 1){
  38.                         cout << endl;
  39.                 }
  40.                 cout << "Field #" << case++ << ":n";
  41.                 for(int i = 0 ; i < n ; i++){
  42.                         for(int j = 0 ; j < m ; j++){
  43.                                 if(b[i][j]==-1)cout<<'*';
  44.                                 else cout << b[i][j];
  45.                         }
  46.                         cout << endl;
  47.                 }
  48.         }
  49.         // your code goes here
  50.         return 0;
  51. }
Parsed in 0.007 seconds