Gra Fibonacziego
Limit pamięci: 32 MB
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ć.
Zadanie
Napisz program który wczyta liczbę zestawów testowych i dla każdego zestawu:
- wczyta ze standardowego wejścia słowo, na którym toczy się gra,
- określi, czy pierwszy gracz zawsze może wygrać,
- wypisze odpowiedź na standardowe wyjście.
Wejście
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.
Wyjście
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.
Przykład
Dla danych wejściowych:
2
5 aaaaa
10 abbababbaa
poprawną odpowiedzią jest:
TAK
NIE