#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; class Cell { public: vector adj; class Component *comp; int row; int col; int state; // '.', 'o' int number; }; class Component { public: int type; /* '.' or 'o' */ int number; vector cells; map adj; map adjcount; set unsafe_neighbors; bool done; }; class FoxAndGo2 { public: int maxKill(vector board); void DFS(Cell *c, Cell *start); vector Board; vector < vector > Cells; vector All; vector < Component * > White_Components; vector < Component * > Empty_Components; vector < Component * > Components; deque < Component * > Killable; int Rows; int Cols; }; int FoxAndGo2::maxKill(vector board) { return 0; }