Szachownica

Dodaj zakładkę 
Autor: 
Trudność: 
3
Typ rozwiązania: 
Macierz
Dziedzina: 

Wyobraźmy sobie szachownicę wielkości 50 x 50. Na szachownicy rozmieszczone są figury, przy czym na każdym polu może stać kilka figur. Twoim zadaniem będzie sprawdzić, które pola nie są szachowane.

Krótki opis zachowania poszczególnych figur w szachach:

  • król szachuje pola sąsiadujące z nim bezpośrednio (również na skos)
  • hetman szachuje wszystkie pola znajdujące się na prostych przebiegających przez pole, na którym stoi (poziomych, pionowych i dwóch skośnych)
  • wieża szachuje wszystkie pola znajdujące się na poziomych i pionowych prostych przebiegających przez pole, na którym stoi
  • goniec szachuje wszystkie pola na prostych skośnych
  • skoczek szachuje pola, do których może dotrzeć poruszając się dwa pola w dowolnym kierunku i jedno pole w dowolnym kierunku prostopadłym do poprzedniego
  • pionki pomijamy.

W załączonym pliku znajdziesz spis figur ze współrzędnymi pól, na których te figury stoją. Wiersze i kolumny szachownicy numerowane są od zera, jak w większości języków programowania. Twoim zadaniem jest wydrukowanie listy pól, które nie są szachowane (przyjmujemy, że pole, na którym stoi figura jest szachowane). Przykładowo, dla szachownicy 3x3, na której stoi w lewym górnym rogu koń, a na ostatnim polu środkowego rzędu goniec i król odpowiedź brzmiałaby:

[1, 0; 2, 0]

(Pamiętaj o posortowaniu listy, najpierw wg wierszy, w obrębie wiersza wg kolumny.)

ZałącznikWielkość
figury.txt823 bajty
Nierozwiązane