Prihlásenie Registrácia  

C - Hra so zápalkami

Časový limit: 2s, Pamäťový limit: 64MiB

Programovacie jazyky: Pascal, C, C++, Java, C++0x, Python 3

Počet bodov: 1

[ Pošli riešenie ] [ Tvoje riešenia ] [ Správne riešenia ] [ Vzorové riešenie ]

Adam a Emil patria medzi žiakov, ktorí si domáce úlohy pripravia vždy doma. Počas prestávok majú dostatok voľného času (na rozdiel od niektorých ďalších spolužiakov, ktorí si píšu úlohu až v škole). Povedali si, že si ho skrátia hrou so zápalkami. Vysypali zápalky na dve kôpky (na lavicu) a dohodli si pravidlá – budú sa striedať, každý odoberie nepárny počet zápaliek (z jednej kôpky). Prehrá ten, ktorý zoberie poslednú zápalku z lavice. Adam ťažko znáša prehru, tak by chcel vedieť či existuje postup, ktorý by mu zaručil výhru.

Úloha

Daný je počet zápaliek na obidvoch kôpkach z1, z2. Zistite, či existuje víťazná stratégia pre prvého hráča, a ak áno, napíšte koľko najviac zápaliek a z ktorej kôpky musí zobrať v prvom ťahu.

Vstup

Prvý riadok obsahuje počet N testovacích sád (1 ≤ N ≤ 10 000). Nasleduje N riadkov, každý obsahuje dve čísla 0 ≤ Z1, Z2 ≤ 1 000 000 000.

Výstup

Pre každú sadu zo vstupu na jednom riadku uveďte dve čísla - z ktorej kôpky a koľko zápaliek treba odobrať (V prípade rovnakej možnosti z obidvoch kôpok vypíšte odobratie z druhej kôpky). Ak víťazná stratégia neexistuje, tak vypíšte „Adam ma smolu“.

Príklad

Vstup:

3
0 0
1 0
1 1

Výstup:

Adam ma smolu
Adam ma smolu
2 1