Polish version    English version  
  Historia OI -> VIII OI 2000/2001 -> Zadania


 Aktualności
 O olimpiadzie
 Komitety
 XVIII OI 2010/2011
 Historia OI
XVII OI 2009/2010
XVI OI 2008/2009
XV OI 2007/2008
XIV OI 2006/2007
XIII OI 2005/2006
XII OI 2004/2005
XI OI 2003/2004
X OI 2002/2003
IX OI 2001/2002
VIII OI 2000/2001
Wyniki III etapu
Wyniki II etapu
Wyniki I etapu
Zadania
Regulamin
Zasady organizacji
Wskazówki
Terminarz
Statystyki
VII OI 1999/2000
VI OI 1998/1999
V OI 1997/1998
IV OI 1996/1997
III OI 1995/1996
II OI 1994/1995
I OI 1993/1994
 Książeczki OI
 Reprezentacja
 Obozy Olimpiady
 Galeria zdjęć
 Ciekawe odsyłacze
 OIG LiveCD
 IV OIG 2009/2010
 Historia OIG
 SIO
 MAIN
VIII Olimpiada Informatyczna 2000/2001

Zadanie: PCH
Autor: Marcin Sawicki
Wędrowni treserzy pcheł

Zawody III stopnia, dzień próbny 26 marzec 2001
Plik źródłowy: PCH.??? (np. pas, c, cpp)
Plik wykonywalny: PCH.exe
Plik wejściowy: PCH.in
Plik wyjściowy: PCH.out

W Bajtocji można spotkać wędrownych treserów pcheł. Tresowane pchły uczone są tańca, polegającego na wykonywaniu precyzyjnych skoków w rytm muzyki. Dokładnie wygląda to tak: treser układa na stole w rządku ponumerowane żetony, przy czym żetony nie muszą być ułożone po kolei. Na każdym żetonie, oprócz jego numeru, jest również napisany numer żetonu, na który powinna z niego skoczyć pchła. Następnie treser ustawia po jednej pchle na każdym z żetonów i włącza muzykę. Na początku każdego taktu, każda z pcheł wykonuje skok wprost na żeton, którego numer jest napisany na żetonie, na którym w danej chwili stoi. W trakcie tańca może się zdarzyć, że kilka pcheł znajdzie się na tym samym żetonie i razem wykonują dalsze skoki. Załóżmy, że mamy n tresowanych pcheł i n żetonów. Jeśli podamy, jakie liczby znajdują się kolejno na żetonach numer 1,2,...,n, to jednoznacznie opiszemy układ choreograficzny, jaki zaprezentują pchły. Jednak może się okazać, że dwa różne zestawy żetonów dają ten sam układ, jeśli tylko odpowiednio je ułożymy.

Przykład

Powiedzmy, że mamy trzy żetony. Jeśli z żetonu nr 1 należy skoczyć na żeton nr 2, z żetonu nr 2 na żeton nr 3, a z żetonu nr 3 na żeton nr 1 (w skrócie: 1->2, 2->3, 3->1), to pchły będą tańczyć ,,w kółko" i żadne dwie nigdy się nie spotkają na tym samym żetonie. Jest to inny układ tańca, niż np. 1->2, 2->3, 3->3, gdzie już po dwóch taktach wszystkie trzy pchły spotkają się na żetonie nr 3 i dalej będą razem skakać w miejscu.

Natomiast układy 1->2, 2->3, 3->2, 4->4 oraz 1->1, 2->3, 3->2, 4->3 są takie same -- wystarczy ułożyć żetony na stole w rzędzie, w pierwszym przypadku w kolejności od lewej do prawej, a w drugim od prawej do lewej, a pchły odtańczą ten sam taniec.

Zadanie

Gawiedź bardzo się niecierpliwi, gdy pchły tańczą według tego samego układu więcej niż raz. Dlatego potrzebny jest program, który:
  • wczyta z pliku tekstowego pch.in liczbę przypadków testowych,
  • dla każdego z przypadków wczyta z pliku pch.in opis dwóch zestawów żetonów i rozstrzygnie, czy żetony z tych zestawów można ułożyć na stole tak, by pchły wykonały taki sam taniec,
  • wypisze odpowiedzi do pliku tekstowego pch.out.

Wejście

W pierwszym wierszu pliku tekstowego pch.in znajduje się jedna liczba całkowita d równa liczbie przypadków testowych, 1<=d<=100.

Kolejne 3d wiersze pliku pch.in opisują kolejne przypadki testowe -- każdy przypadek zajmuje trzy kolejne wiersze pliku. Pierwszy z nich zawiera jedną liczbę całkowitą 1<=n<=2 000, równą liczbie żetonów. Każdy z dwóch następnych wierszy zawiera opis zestawu n żetonów w postaci ciągu n liczb całkowitych z przedziału 1...n, pooddzielanych pojedynczymi odstępami; i-ty wyraz ciągu oznacza numer żetonu, na który mają skakać pchły z żetonu nr i.

Wyjście

Dla każdego z przypadków testowych z pliku pch.in należy wypisać do pliku tekstowego pch.out dokładnie jeden wiersz, zawierający dokładnie jedną literę:
  • "T" -- jeśli oba zestawy żetonów można ułożyć tak, aby pchły wykonały taki sam taniec,
  • "N" -- w przeciwnym wypadku.

Przykład

Dla pliku wejściowego pch.in:
2
3
2 3 1
2 3 3
4
2 3 2 4
1 3 2 3
poprawną odpowiedzią jest plik wyjściowy pch.out
N
T



Wersja do druku