Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
AL_16_08 - Gra w wieże po raz drugi |
Antek i Basia postanowili znowu wykorzystać swoje ulubione klocki w jakiś ciekawy sposób (tak jak to zrobili już kiedyś). Dzieci wymyśliły nową grę o następujących zasadach.
Z klocków w dwóch kolorach (weźmy dla przykładu czerwone i zielone) ustawiamy dużo wież. Każdy z dwóch graczy jest właścicielem klocków w jednym kolorze. Ruch polega na usunięciu z jednej z wież klocka w swoim kolorze wraz z wszystkimi klockami leżącymi powyżej. Gracze wykonują ruchy na zmianę, a ten, kto nie może już wykonać ruchu - przegrywa.
Wiedząc jak zbudowane są wieże, kto zaczyna i jakim gra kolorem, można przewidzieć wynik gry (zakładając oczywiście, że dzieci grają optymalnie). Napisz program, który rozwiąże opisany problem.
Wejście
W pierwszej linii liczba przypadków testowych (gier) t (t ≤ 1000).
Opis jednej gry przedstawia się następująco:
W pierwszej linii najpierw liczba wież k (1 ≤ k ≤ 100), potem pierwsza litera imienia gracza rozpoczynającego grę ('A' lub 'B'), a następnie pierwsza litera koloru klocków, którymi gra ('C' lub 'Z').
W kolejnych k liniach ciągi złożone z liter 'c' i 'z' opisujące budowę poszczególnych wież ('c' - klocek czerwony, 'z' - klocek zielony) zaczynając od podstawy. Wysokość pojedynczej wieży wynosi od 1 do 64 klocków.
Wyjście
Dla każdego przypadku testowego, w osobnej linii, imię dziecka, które wygra.
Przykład
Wejście: 3 1 B Z czczz 3 A Z zzc cz czzz 2 A C zzc ccz Wyjście: Antek Antek Basia
Dodane przez: | Witold Długosz |
Data dodania: | 2014-05-22 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM64 GOSU |
Pochodzenie: | ALGOLIGA |