Advertisement
PedalaVasile

Rover

Jan 26th, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.41 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <vector>
  4. #include <bitset>
  5.  
  6. using namespace std;
  7.  
  8. ifstream fin("rover.in");
  9. ofstream fout("rover.out");
  10.  
  11. vector < pair < int, int> > deq;
  12.  
  13. int di[] = {-1, +1, -0, +0};
  14. int dj[] = {+0, +0, +1, -1};
  15.  
  16. int cerinta;
  17. int n, G;
  18. int mat[502][502];
  19.  
  20. bitset < 502 > marcat[502];
  21.  
  22. void Lee(int i, int j)
  23. {
  24.     deq.push_back(make_pair(i, j));
  25.  
  26.     while(!deq.empty())
  27.     {
  28.         int i = deq[0].first;
  29.         int j = deq[0].second;
  30.  
  31.         deq.erase(deq.begin());
  32.  
  33.         for(int k = 0; k < 4; k++)
  34.         {
  35.             int nexti = i + di[k];
  36.             int nextj = j + dj[k];
  37.  
  38.             if(!marcat[nexti][nextj])
  39.             {
  40.                 marcat[nexti][nextj] = 1;
  41.                
  42.                 if(mat[nexti][nextj] >= G)
  43.                     deq.insert(deq.begin(), mat[nexti][nextj]);
  44.                 else
  45.                     mar
  46.                
  47.             }
  48.         }
  49.     }
  50. }
  51.  
  52. void gard()
  53. {
  54.     for(int i = 0; i <= n + 1; i++)
  55.     {
  56.         marcat[i][0] = 1;
  57.         marcat[0][i] = 1;
  58.         marcat[n + 1][i] = 1;
  59.         marcat[i][n + 1] = 1;
  60.     }
  61.  
  62. }
  63.  
  64. int main()
  65. {
  66.     fin >> cerinta >> n;
  67.  
  68.     if(cerinta == 1)
  69.         fin >> G;
  70.  
  71.     gard();
  72.  
  73.     for(int i = 1; i <= n; i++)
  74.         for(int j = 1; j <= n; j++)
  75.             fin >> mat[i][j];
  76.  
  77.  
  78.  
  79.  
  80.     fin.close();
  81.     fout.close();
  82.     return 0;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement