Orada bu oyun ile ilgili çeşitli sorular , hatta bir kral-of-the-tepe yarışması burada . Ancak tüm bu zorlukların ve yarışmaların bir oyunun kazananı otomatik olarak belirlemek için bir yola ihtiyacı olduğunu düşünüyorum. Yani:
Meydan okuma
["rock", "paper", "scissors", "lizard", "spock"]Oyuncu 1 ve oyuncu 2 için seçimleri temsil eden aralıktaki iki giriş göz önüne alındığında , maçın galibi belirlenir.
kurallar
[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
Kısıtlamalar
- Girdi, verilen aralıktaki bir dize çifti olacaktır (başka hiçbir dize kullanılamaz). İsterseniz karakter dizilerini, belirtilen değerlerden herhangi birini temsil ettiği sürece kullanabilirsiniz.
- Giriş dizeleri için küçük harf, büyük harf (
"ROCK") veya deve büyük harf ( ) kullanıp kullanmamayı seçebilirsiniz"Rock"; seçilen vaka tüm girişler için aynıdır. - Çıktı, kazananı belirleyen ve cevaplar tutarlı olduğu sürece istediğiniz her şey olabilir, değerlerin üçlüsü olacaktır. Örnek:
1ilk giriş kazanırsa,2ikinci giriş kazanırsa,0bir kravat varsa. Veya belkiAde ilk giriş kazanırsa,Bikinci giriş kazanırsa,<empty string>bir kravat varsa.
Hedef
Bu kod golf , yani her dil için en kısa program / yöntem / fonksiyon / lambda kazanabilir!
Testler
[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
cakehile ile verilen cevaplara bakınız ).