0votos

Kata Piedra-Papel-Tijera-Lagarto-Spock en Scala

por josejuan hace 6 años

"rules" define las reglas del juego. La partida es una secuencia de duplas.

En la serie de televisión The Big Bang Theory , uno de sus protagonistas propone una extensión del popular juego piedra papel tijera: Con el fin de hacerlo más divertido añade dos variables nuevas al juego: lagarto y spock.

1
2
3
4
5
def Gana(r: List[(Char, Char)]): Int = { 
    val rules = List(('T', 'P'), ('P', 'I'), ('P', 'L'), ('L', 'S'), ('S', 'T'), ('T', 'L'), ('L', 'P'), ('P', 'S'), ('S', 'I'), ('I', 'T')) 
    def f(z: (Char, Char)): Int = if(rules.contains(z)) 1 else if(rules.contains((z._2, z._1))) -1 else 0 
    f(r.filter(g => f(g) != 0).head) 

Comenta la solución

Tienes que identificarte para poder publicar tu comentario.