Ci sono alcune domande per quanto riguarda questo gioco , anche un re-of-the-Hill contest qui . Ma penso che tutte quelle sfide e contest abbiano bisogno di un modo per determinare automaticamente il vincitore di una partita. Così:
Sfida
Dati due input nell'intervallo che ["rock", "paper", "scissors", "lizard", "spock"]
rappresentano le selezioni per il giocatore 1 e il giocatore 2, determinare il vincitore della partita.
Regole
[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
restrizioni
- L'input sarà una coppia di stringhe nell'intervallo indicato (non è possibile utilizzare altre stringhe). È possibile utilizzare matrici di caratteri se lo si desidera, purché rappresentino uno dei valori indicati.
- È possibile scegliere se utilizzare le lettere minuscole, maiuscole (
"ROCK"
) o maiuscole ("Rock"
) per le stringhe di input, purché il caso scelto sia lo stesso per tutti gli input. - L'output sarà un trio di valori che determinano il vincitore, che può essere tutto ciò che desideri purché le risposte siano coerenti. Esempio:
1
se il primo input vince,2
se il secondo input vince,0
se c'è un pareggio. O forseA
se vince il primo input,B
se vince il secondo input,<empty string>
se c'è un pareggio.
Obbiettivo
Questo è code-golf , quindi può vincere il programma / metodo / funzione / lambda più breve per ogni lingua!
test
[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
trucco).