velimir

Ovci

Mar 26th, 2013
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.87 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4. int x, y, i, j, ovci=0, volci=0, finalOvci=0, finalVolci=0;
  5. char mat[251][251];
  6. void DFS(int a, int b)
  7. {
  8.     if(mat[a][b]=='o')ovci++;
  9.     if(mat[a][b]=='v')volci++;
  10.     mat[a][b] = '#';
  11.     if(mat[a][b+1]!='#' and b+1<y) DFS(a, b+1);
  12.     if(mat[a+1][b]!='#' and a+1<x) DFS(a+1, b);
  13.     if(mat[a][b-1]!='#' and b-1>=0) DFS(a, b-1);
  14.     if(mat[a-1][b]!='#' and a-1>=0) DFS(a-1, b);
  15. }
  16.  
  17. int main()
  18. {
  19.     cin >> x >> y;
  20.     for(i=0; i<x; i++)
  21.         for(j=0; j<y; j++)
  22.             cin >> mat[i][j];
  23.     for(i=0; i<x; i++)
  24.     {
  25.         for(j=0; j<y; j++)
  26.         {
  27.             if(mat[i][j]!='#') DFS(i, j);
  28.             if(ovci>volci)finalOvci+=ovci;
  29.             else finalVolci+=volci;
  30.             ovci = 0;
  31.             volci = 0;
  32.         }
  33.  
  34.  
  35.     }
  36.     cout << finalOvci << " " << finalVolci;
  37.     return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment