#include using namespace std; char Grid[201][201]; int r,c; void getGrid(){ for(int i=0;i>Grid[i][j]; } //simple floodfill void markArea(int a,int b){ Grid[a][b]='2'; if(a-1>=0 && Grid[a-1][b]=='1') markArea(a-1,b); if(a+1=0 && Grid[a][b-1]=='1') markArea(a,b-1); if(b+1=0 && Grid[a-1][b]!='0') cnt++; if(a+1=0 && Grid[a][b-1]!='0') cnt++; if(b+1=0 && Grid[a-1][b]=='0') if(countNeighbors(a-1,b)==1) return false; if(a+1=0 && Grid[a][b-1]=='0') if(countNeighbors(a,b-1)==1) return false; if(b+12) { markArea(a,b); return false; } //neighbors = 2 //find way to go Grid[a][b]='2'; if (a-1>=0 && Grid[a-1][b]=='1') return checkIfSnake(a-1,b); else if (a+1=0 && Grid[a][b-1]=='1') return checkIfSnake(a,b-1); else if (b+1=0 && Grid[a-1][b]=='1') return checkIfSnake(a-1,b); else if (a+1=0 && Grid[a][b-1]=='1') return checkIfSnake(a,b-1); else if (b+1>r>>c; while( r>0 || c>0){ getGrid(); cout<>r>>c; } return 0; }