สร้างฟังก์ชั่นที่จะรับสองสายเป็นอินพุตและส่งกลับผลลัพธ์เดียวสำหรับผลลัพธ์ คำตอบที่ได้รับความนิยมมากที่สุดชนะ
กฎของ Rock-paper-scissors-lizard-Spock คือ:
- กรรไกรตัดกระดาษ
 - กระดาษบังหิน
 - หินทับจิ้งจก
 - Lizard พิษ Spock
 - สป็อคแตกกรรไกร
 - กรรไกรประหารจิ้งจก
 - จิ้งจกกินกระดาษ
 - กระดาษไม่รองรับสป็อค
 - สป็อคระเหยหิน
 - กรรไกรหินแตก
 
เอาต์พุตสำหรับทุกกรณีอินพุตที่เป็นไปได้คือ:
winner('Scissors', 'Paper') -> 'Scissors cut Paper'
winner('Scissors', 'Rock') -> 'Rock breaks Scissors'
winner('Scissors', 'Spock') -> 'Spock smashes Scissors'
winner('Scissors', 'Lizard') -> 'Scissors decapitate Lizard'
winner('Scissors', 'Scissors') -> 'Scissors tie Scissors'
winner('Paper', 'Rock') -> 'Paper covers Rock'
winner('Paper', 'Spock') -> 'Paper disproves Spock'
winner('Paper', 'Lizard') -> 'Lizard eats Paper'
winner('Paper', 'Scissors') -> 'Scissors cut Paper'
winner('Paper', 'Paper') -> 'Paper ties Paper'
winner('Rock', 'Spock') -> 'Spock vaporizes Rock'
winner('Rock', 'Lizard') -> 'Rock crushes Lizard'
winner('Rock', 'Scissors') -> 'Rock breaks Scissors'
winner('Rock', 'Paper') -> 'Paper covers Rock'
winner('Rock', 'Rock') -> 'Rock ties Rock'
winner('Lizard', 'Rock') -> 'Rock crushes Lizard'
winner('Lizard', 'Spock') -> 'Lizard poisons Spock'
winner('Lizard', 'Scissors') -> 'Scissors decapitate Lizard'
winner('Lizard', 'Paper') -> 'Lizard eats Paper'
winner('Lizard', 'Lizard') -> 'Lizard ties Lizard'
winner('Spock', 'Rock') -> 'Spock vaporizes Rock'
winner('Spock', 'Lizard') -> 'Lizard poisons Spock'
winner('Spock', 'Scissors') -> 'Spock smashes Scissors'
winner('Spock', 'Paper') -> 'Paper disproves Spock'
winner('Spock', 'Spock') -> 'Spock ties Spock'
ความท้าทายเพิ่มเติมที่แนะนำโดย @Sean Cheshire: อนุญาตรายการที่กำหนดเองเช่นจากไซต์นี้ ด้วยรายการ n-item ไอเท็มจะหายไปก่อนหน้า (n-1) / 2 และชนะมากกว่า (n-1) / 2 ต่อไปนี้