Krzysztof Diks, Marcin Kubica |
Tłumaczenie |
Tajne komunikaty pomiędzy Świętym Mikołajem i jego małymi pomocnikami szyfruje się zwykle w języku J-25. Alfabet tego języka jest taki sam jak alfabet angielski, z jednym wyjątkiem: nie ma w nim litery ``Z'', tzn. alfabet ten zawiera 25 liter od ``A'' do ``Y'', w takiej samej kolejności, co alfabet angielski. Każde słowo w języku J-25 składa się z dokładnie 25 różnych liter. Takie słowo można zapisać w tablicy , wpisując je w kolejne wiersze; np. słowo ADJPTBEKQUCGLRVFINSWHMOXY zostanie zapisane następująco:
A D J P T B E K Q U C G L R V F I N S W H M O X Y.
Po wpisaniu poprawnego słowa z języka J-25 do tablicy, litery we wszystkich wierszach i kolumnach będą uporządkowane rosnąco. Tak więc słowo ADJPTBEKQUCGLRVFINSWHMOXY jest poprawne, a ADJPTBEGQUCKLRVFINSWHMOXY nie (porządek rosnący nie jest zachowany w drugiej i trzeciej kolumnie).
Święty Mikołaj ma słownik, który jest listą wszystkich poprawnych słów języka J-25, ułożonych w porządku rosnącym (leksykograficznie) wraz z ich numerami porządkowymi zaczynającymi się od 1. Np. w tym słowniku ABCDEFGHIJKLMNOPQRSTUVWXY jest słowem nr 1, zaś ABCDEFGHIJKLMNOPQRSUTVWXY jest słowem nr 2. W słowie nr 2, w porównaniu ze słowem nr 1, litery ``U'' i ``T'' są przestawione.
Niestety słownik ten jest bardzo duży. Napisz program, który wyznacza numer porządkowy dowolnego zadanego słowa, a także słowo odpowiadające zadanemu numerowi. W słowniku nie ma więcej niż 231 słów.
Plik wejściowy ma nazwę twofive.in i składa się z dwóch wierszy. Pierwszy wiersz zawiera jednoliterowy napis: ``W'' lub ``N''. Jeżeli jest to ``W'', to drugi wiersz zawiera poprawne słowo języka J-25, tzn. 25-znakowy napis. Jeżeli pierwszy wiersz zawiera ``N'', to drugi wiersz zawiera numer porządkowy poprawnego słowa z języka J-25.
Plik wyjściowy ma nazwę twofive.out i składa się z jednego wiersza. Jeśli drugi wiersz pliku wejściowego zawiera słowo 25-literowe, to plik wyjściowy zawiera numer porządkowy tego słowa. Jeśli drugi wiersz pliku wejściowego zawiera liczbę, to plik wyjściowy zawiera 25-literowe słowo o tym numerze porządkowym.
ll
twofive.in & twofive.out
W
ABCDEFGHIJKLMNOPQRSUTVWXY
&
2
ll
twofive.in & twofive.out
N
2
&
ABCDEFGHIJKLMNOPQRSUTVWXY