Jako dziecko często grałem w tę grę.
Zasady
Jest dwóch graczy (nazwijmy je A i B), a każdy gracz używa swoich rąk jako broni. Istnieją trzy możliwe ruchy:
Ręce do góry, aby załadować amunicję do pistoletu.
Każdy pistolet zaczyna się pusty. Ładowanie zwiększa amunicję o jeden.
Ręce skierowane na drugiego gracza do strzału.
To zmniejsza amunicję o jeden. Musisz strzelać przynajmniej jedną jednostką amunicji.
Skrzyżowane ramiona, aby uchronić się przed strzałem.
Obaj gracze poruszają się jednocześnie. Jeśli obaj gracze strzelają w tym samym czasie, pociski trafiają się nawzajem, a gra trwa. Gra kończy się, gdy jeden z graczy strzela, a drugi ładuje amunicję.
Strzelanie i pusta broń jest uważane za oszustwo . Jeśli gracz oszukuje, podczas gdy drugi dokonuje czynności prawnej, oszust przegrywa natychmiast. Jeśli obaj gracze oszukują w tym samym czasie, gra jest kontynuowana.
Próby oszukiwania nie zmniejszają amunicji, więc nigdy nie mogą być negatywne.
Wyzwanie
Biorąc pod uwagę ruchy wykonane przez graczy A i B, dane wyjściowe, który gracz wygrał grę: 1
dla gracza A, -1
dla gracza B i 0
remisu. Możesz użyć dowolnej potrójnej wartości zwrotnej, ale musisz w odpowiedzi określić, których używasz.
Gra może:
- zakończyć bez konieczności przetwarzania wszystkich ruchów;
- nie kończą się podanymi ruchami i dlatego uważa się je za remis.
Dane wejściowe można podjąć:
- jak struny
- jako tablice / listy liczb całkowitych
- w jakikolwiek inny sposób, który nie przetwarza danych wejściowych
Pełny program lub funkcje są dozwolone. Ponieważ jest to kod-golf , wygrywa najkrótsza odpowiedź w bajtach!
Przypadki testowe
A: "123331123"
B: "131122332"
-----^ Player B shoots player A and wins.
Output: -1
A: "111322213312"
B: "131332221133"
-------^ Player B cheats and loses.
Output: 1
A: "1333211232221"
B: "1213211322221"
----------^^ Both players cheat at the same time. The game continues.
Output: 0
A: "12333213112222212"
B: "13122213312232211"
| || ^---- Player A shoots player B and wins.
^-------^^------ Both players cheat at the same time. The game continues.
Output: 1