Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
TOPSES - Sezamie, otwórz się! |
W poszukiwaniu zaginionego starożytnego skarbu, Jaś dotarł przed bramy ogromnego skarbca zabezpieczonego tysiącami skomplikowanych zamków. Każdy zamek składa się z pary koncentrycznych obrotowych dysków. Na obwodzie każdego dysku umieszczone są znaki 'a'-'z'.
Jaś poczynił następujące obserwacje dotyczące każdego zamka:
- Łańcuchy znaków na każdym z dwóch dysków są jednakowej długości.
- Zamek można otworzyć wtedy i tylko wtedy, gdy oba dyski zostaną obrócone w taki sposób, że odpowiadające sobie znaki na obu dyskach będą identyczne.
Zadaniem Jasia jest swierdzić, czy dany zamek, dla którego znane są łańcuchy znaków na obu dyskach, może zostać otwrty.
Wejście
W pierwszej linii wejścia podana została liczba zamków (t <= 20). W kolejnych 2t liniach wypisano pary łańcuchów dla kolejnych zamków, każdy nie dłuższy niż 60 tysięcy znaków. Identycznej długości łańcuchy z linii 2k-1 oraz 2k reprezentują dyski k-tego zamka (1 <= k <= t).
Wyjście
Na wyjściu należy wypisać w t kolejnych liniach słowo "yes" lub "no", w zależności od tego czy dany zanek może zostać otwarty czy nie.
Przykład
Wejście 2 abcabc bcabca aaaabb abaaba Wyjście yes no
Dodane przez: | mima |
Data dodania: | 2006-05-28 |
Limit czasu wykonania programu: | 1s-12s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: GOSU |
Pochodzenie: | Kashyap / FIPC |