Advertisement
rai009

uva 10189

Apr 24th, 2014
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.24 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. char array[110][110];
  4. long long int num[150][150];
  5. int main()
  6. {
  7.     int n,m,i,j,k,t;
  8.     t=1;
  9.     while(scanf("%d %d",&n,&m)&&(!(m==0&&n==0)))
  10.     {
  11.         i=0;
  12.         while(i<n)
  13.         {
  14.             j=0;
  15.             while(j<=m)
  16.             {
  17.                 scanf("%c",&array[i][j]);
  18.                 j++;
  19.             }
  20.             i++;
  21.         }
  22.         i=0;
  23.         while(i<n)
  24.         {
  25.             j=0;
  26.             while(j<=m)
  27.             {
  28.                 num[i][j]=0;
  29.                 j++;
  30.             }
  31.             i++;
  32.         }
  33.         printf("Field #%d:\n",t);
  34.         for(i=0;i<n;i++)
  35.         {
  36.             for(j=1;j<=m;j++)
  37.             {
  38.                if(array[i][j]=='*')
  39.                 {
  40.                     num[i][j]=array[i][j];
  41.                     if(i==0)
  42.                     {
  43.                         if(j==1)
  44.                         {
  45.                             num[i][j+1]++;
  46.                             num[i+1][j]++;
  47.                             num[i+1][j+1]++;
  48.                         }
  49.                         else if(j==m)
  50.                         {
  51.                             num[i][j-1]++;
  52.                             num[i+1][j-1]++;
  53.                             num[i+1][j]++;
  54.                         }
  55.                         else
  56.                         {
  57.                             num[i-1][j-1]++;
  58.                             num[i-1][j]++;
  59.                             num[i-1][j+1]++;
  60.                             num[i][j-1]++;
  61.                             num[i][j+1]++;
  62.                             num[i+1][j-1]++;
  63.                             num[i+1][j]++;
  64.                             num[i+1][j+1]++;
  65.                         }
  66.                     }
  67.                     else if(i==n-1)
  68.                     {
  69.                         if(j==1)
  70.                         {
  71.                             num[i][j+1]++;
  72.                             num[i-1][j]++;
  73.                             num[i-1][j+1]++;
  74.                         }
  75.                         else if(j==m)
  76.                         {
  77.                             num[i][j-1]++;
  78.                             num[i-1][j-1]++;
  79.                             num[i-1][j]++;
  80.                         }
  81.                         else
  82.                         {
  83.                             num[i-1][j-1]++;
  84.                             num[i-1][j]++;
  85.                             num[i-1][j+1]++;
  86.                             num[i][j-1]++;
  87.                             num[i][j+1]++;
  88.                             num[i+1][j-1]++;
  89.                             num[i+1][j]++;
  90.                             num[i+1][j+1]++;
  91.                         }
  92.                     }
  93.                     else
  94.                     {
  95.                         if(j==1)
  96.                         {
  97.                             num[i][j+1]++;
  98.                             num[i-1][j]++;
  99.                             num[i-1][j+1]++;
  100.                              num[i+1][j]++;
  101.                             num[i+1][j+1]++;
  102.                         }
  103.                         else if(j==m)
  104.                         {
  105.                             num[i][j-1]++;
  106.                             num[i-1][j-1]++;
  107.                             num[i-1][j]++;
  108.                             num[i+1][j-1]++;
  109.                             num[i+1][j]++;
  110.                         }
  111.                         else
  112.                         {
  113.                             num[i-1][j-1]++;
  114.                             num[i-1][j]++;
  115.                             num[i-1][j+1]++;
  116.                             num[i][j-1]++;
  117.                             num[i][j+1]++;
  118.                             num[i+1][j-1]++;
  119.                             num[i+1][j]++;
  120.                             num[i+1][j+1]++;
  121.                         }
  122.  
  123.                     }
  124.                 }
  125.             }
  126.  
  127.         }
  128.         i=0;
  129.         while(i<n)
  130.         {
  131.             j=1;
  132.             while(j<=m)
  133.             {
  134.                 if(array[i][j]=='*') printf("%c",array[i][j]);
  135.                 else printf("%lld",num[i][j]);
  136.                 j++;
  137.             }
  138.             printf("\n");
  139.             i++;
  140.         }
  141.         printf("\n");
  142.         t++;
  143.     }
  144.     return 0;
  145. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement