Liczba ruchów konia na planszy

0

Witam
Mam takie zadanie i nie mam pojęcia jak go rozkiminić:
Dana jest kwadratowa plansza o wymiarze NxN, na której ustawione są pewne figury. Jedna z tych fig ur, o nazwie K, znajduje się na planszy na pozycji(k,l) może poruszać się ruchem konika szachowego, ale wyłącznie jednym. Zakładamy, że figura ta może "przeskakiwać" inne figury, ale pola, na które zamierza przeskoczyć, musi być puste. Napisz funkcję, która sprawdzi, ile ruchów na tej planszy może wykonać figura K. Narysuj schemat blokowy tej funkcji.

mógłby mi ktoś pomóc ?

1

Rozumiem że myślenie jest strasznie bolesne ...

unsigned check(bool board[N][N],int xpos,int ypos)
  {
   static const int tb[8][2]={{2,1},{2,-1},{-2,1},{-2,-1},{1,2},{-1,2},{1,-2},{-1,-2}};
   unsigned count=0;
   for(int i=0;i<8;++i) if((0<=xpos+tb[i][0])&&(xpos+tb[i][0]<N)&&(0<=ypos+tb[i][1])&&(ypos+tb[i][1]<N)&&(!board[ypos+tb[i][1]][xpos+tb[i][0]])) ++count;
   return count;
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1