У дитинстві я багато грав у цю гру.
Правила
Є два гравці (назвемо їх А і В), і кожен гравець використовує руки як гармати. Можливі три кроки:
Руки до завантаження боєприпасів до гармати.
Кожен пістолет починається порожнім. Завантаження збільшує боєприпаси на одиницю.
Руки, що вказують на іншого гравця, щоб стріляти.
Це зменшує боєприпаси на одиницю. Для стрільби у вас повинен бути принаймні одна одиниця патронів.
Перехрещені руки, щоб убезпечити себе від пострілу.
Обидва гравці рухаються одночасно. Якщо обидва гравці стріляють одночасно, кулі вдаряються один про одного, і гра продовжується. Гра закінчується, коли один гравець стріляє, а інший завантажує боєприпаси.
Стрілянина і порожній пістолет вважається обманом . Якщо гравець обманює, а інший виконує юридичну дію, шахрай негайно програє. Якщо обидва гравці одночасно обманюють, гра продовжується.
Спроби обману не зменшують боєприпаси, тому це ніколи не може бути негативним.
Виклик
З огляду на ходи гравців A і B, виведіть, хто з гравців виграв гру: 1
для гравця A, -1
для гравця B та 0
нічиї. Ви можете використовувати будь-яку іншу трійку повернутих значень, але у своїй відповіді потрібно вказати, які саме з них ви використовуєте.
Гра може:
- закінчуються без необхідності обробляти всі рухи;
- не закінчуються заданими рухами, і тому вона вважається нічиєю.
Вхід можна взяти:
- як струни
- як масиви / списки цілих чисел
- будь-яким іншим способом, який не попередньо обробляє введення
Повна програма або функції дозволені. Оскільки це код-гольф , найкоротша відповідь у байтах виграє!
Тестові справи
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