Есть несколько вопросов, касающихся этой игры , даже соревнование « Король горы » здесь . Но я думаю, что все эти испытания и конкурсы нуждаются в способе автоматического определения победителя в игре. Так:
Вызов
Учитывая два входа в диапазоне, ["rock", "paper", "scissors", "lizard", "spock"]
представляющем выборы для игрока 1 и игрока 2, определите победителя матча.
правила
[Winner] [action] [loser]
-----------------------------
scissors cut paper
paper covers rock
rock crushes lizard
lizard poisons spock
spock smashes scissors
scissors decapitates lizard
lizard eats paper
paper disproves spock
spock vaporizes rock
rock crushes scissors
ограничения
- На входе будет пара строк в заданном диапазоне (никакие другие строки не могут быть использованы). Вы можете использовать массивы символов, если хотите, если они представляют любое из упомянутых значений.
- Вы можете выбрать, использовать строчные, прописные (
"ROCK"
) или верблюжьи ( ) регистры"Rock"
для входных строк, если выбранный регистр одинаков для всех входных данных. - Результатом будет трио значений, определяющих победителя, которое может быть любым, если ответы последовательны. Пример:
1
если первый вход выигрывает,2
если второй вход выигрывает,0
если есть ничья. Или, может быть,A
если первый вход выигрывает,B
если второй вход выигрывает,<empty string>
если есть ничья.
Цель
Это код-гольф , поэтому может быть самая короткая программа / метод / функция / лямбда для каждого языка!
тесты
[Input 1] [Input 2] [Output: 1/2/0]
-----------------------------------
rock paper 2
rock scissors 1
lizard spock 1
spock rock 1
spock paper 2
rock rock 0
cake
хитростью).