Skoczek jest figurą, która atakuje pola na szachownicy zgodnie z poniższym rysunkiem
(skoczek umieszczony w polu
atakuje pola oznaczone przez krzyżyk).
Dana jest szachownica o rozmiarach
— mająca
wiersze i
kolumn, gdzie
—
oraz zbiór
pól na tej szachownicy.
Wiersze na szachownicy są ponumerowane od góry do dołu liczbami od
do
, a kolumny od lewej do prawej liczbami od
do
.
Na szachownicy wolno rozmieszczać skoczki tylko na polach nie należących do
oraz tak,
aby żadne dwa nie atakowały się nawzajem.
Zakładamy, że w każdej kolumnie co najwyżej jedno pole należy do
.
Zbiór
można więc opisać w postaci ciągu:
, gdzie
.
Wartość
oznacza, że żadne pole w
-tej kolumnie nie należy do
,
zaś wartość
jest numerem wiersza jedynego pola w tej kolumnie, które należy do
.
Ułóż program, który:
oraz opis zbioru pól
,
, które można ustawić na szachownicy zgodnie z podanymi zasadami oraz liczbę
wszystkich takich ustawień
skoczków,
W pierwszym wierszu standardowego wejścia jest zapisana jedna liczba całkowita dodatnia
,
.
Jest to liczba kolumn szachownicy.
W każdym z kolejnych
wierszy jest zapisana jedna liczba ze zbioru
.
Są to kolejne wyrazy ciągu będącego opisem zbioru pól
.
Na standardowe wyjście należy zapisać dwie liczby całkowite
i
oddzielone odstępem.
Dla danych wejściowych:
2 1 0
poprawną odpowiedzią jest:
4 2
Autor zadania: Wojciech Rytter.
W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem szkopul@fri.edu.pl.
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, odwiedź nasze serwery na Discordzie. Są one moderowane przez społeczność, ale członkowie zespołu wsparcia również aktywnie się tam udzielają.