In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you are familiar with IRC chat, the support team is also reachable on PIRC network (irc.pirc.pl
) in #szkopul
channel. If you are not, just use email.
Please do not ask us things like "how to solve task XYZ?".
Please remember that the support team has to sleep sometimes or go to work in real life.
Ciąg słów Fibonacziego definujemy w następujący sposób:
,
oraz
.
Inaczej mówiąc, słowo Fibonacziego o numerze
powstaje przez połączenie
ze sobą słów o numerach
i
.
Na przykład:
,
,
.
W grę Fibonacziego gra dwóch graczy.
Grają oni na słowie składającym się z liter i
(słowo to będziemy nazywali planszą).
Gracze wykonują na przemian ruchy polegające na skreślaniu dowolnego słowa Fibonacziego z prawego końca planszy.
Przegrywa ten gracz, który nie może wykonać kolejnego ruchu.
Twoim zadaniem jest stwierdzenie, czy dla danego słowa gracz wykonujący pierwszy ruch zawsze może wygrać.
Napisz program który wczyta liczbę zestawów testowych i dla każdego zestawu:
W pierwszym wierszu standardowego wejścia znajduje się jedna liczba całkowita
(
).
Jest to liczba przypadków testowych, które pojawią sie na standardowym wejściu.
Przypadki testowe opisane są w kolejnych
wierszach, jeden przypadek w jednym wierszu.
Każdy z tych
wierszy zawiera dodatnią liczbę całkowitą
(
), a następnie po spacji ciąg liter
i
długości
, nieoddzielonych spacjami.
Jest to słowo, na którym toczy się gra.
Na standardowe wyjście powinno zostać wypisane wierszy.
Każdy wiersz powinien zawierać odpowiedź do jednego przypadku testowego,
w takiej samej kolejności w jakiej pojawiły się one na wejściu.
Odpowiedzią powinno być słowo TAK, gdy pierwszy gracz może zawsze
wygrać, lub NIE w przeciwnym wypadku.
Dla danych wejściowych:
2 5 aaaaa 10 abbababbaa
poprawną odpowiedzią jest:
TAK NIE