Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- const int N = 12;
- int MaxCurrentPasses = 0;
- void Pass(int x, int y, vector < vector <int> > &CheckersField, int PassCounter)
- {
- if( CheckersField[x+1][y+1] == -1 && CheckersField[x+2][y+2] == 0)
- {
- PassCounter++;
- MaxCurrentPasses=max(MaxCurrentPasses,PassCounter);
- CheckersField[x+1][y+1] = 0;
- Pass(x+2,y+2,CheckersField,PassCounter);
- CheckersField[x+1][y+2];
- }
- if(CheckersField[x+1][y-1] == -1 && CheckersField[x+2][y-2] == 0)
- {
- PassCounter++;
- MaxCurrentPasses=max(MaxCurrentPasses,PassCounter);
- CheckersField[x+1][y-1] = 0;
- Pass(x+2,y-2,CheckersField,PassCounter);
- CheckersField[x+1][y-2];
- }
- if(CheckersField[x-1][y-1] == -1 && CheckersField[x-2][y-2] == 0)
- {
- PassCounter++;
- MaxCurrentPasses=max(MaxCurrentPasses,PassCounter);
- CheckersField[x-1][y-1] = 0;
- Pass(x-2,y-2,CheckersField,PassCounter);
- CheckersField[x-1][y-2];
- }
- if(CheckersField[x-1][y+1] == -1 && CheckersField[x-2][y+2] == 0)
- {
- PassCounter++;
- MaxCurrentPasses=max(MaxCurrentPasses,PassCounter);
- CheckersField[x-1][y+1] = 0;
- Pass(x-2,y+2,CheckersField,PassCounter);
- CheckersField[x-1][y+2];
- }
- PassCounter--;
- }
- int main()
- {
- int Set;
- cin>>Set;
- while(Set--)
- {
- vector < vector <int> > CheckersField(N, vector<int>(N,-2));
- vector <pair <int, int> > WhitePawnCoOrdinates;
- for(int i=0;i<N-2;i++)
- {
- for(int j=0;j<N-2;j++)
- {
- char square;
- cin>>square;
- if(square == '.' || square == '#')
- CheckersField[i][j] = 0;
- if(square == 'W')
- {
- CheckersField[i][j] = 1;
- WhitePawnCoOrdinates.push_back(make_pair(i,j));
- }
- if(square == 'B')
- CheckersField[i][j] = -1;
- }
- }
- for(int i=0;i<WhitePawnCoOrdinates.size();i++)
- {
- int x = WhitePawnCoOrdinates[i].first;
- int y = WhitePawnCoOrdinates[i].second;
- Pass(x+1,y+1, CheckersField,0);
- }
- cout<<MaxCurrentPasses<<endl;
- MaxCurrentPasses = 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement