Para los propósitos de esta pregunta, una baraja de cartas se formatea de esta manera:
[
"AS", "2S", "3S", "4S", "5S", "6S", "7S", "8S", "9S", "10S", "JS", "QS", "KS",
"AD", "2D", "3D", "4D", "5D", "6D", "7D", "8D", "9D", "10D", "JD", "QD", "KD",
"AH", "2H", "3H", "4H", "5H", "6H", "7H", "8H", "9H", "10H", "JH", "QH", "KH",
"AC", "2C", "3C", "4C", "5C", "6C", "7C", "8C", "9C", "10C", "JC", "QC", "KC",
"J", "J"
]
Las tarjetas siempre se formatean como valor, seguidas de palos. Por ejemplo, AS
es el as de espadas. Las dos J's son Jokers. Queremos barajar esta baraja de cartas, pero la baraja debe ser Superb ™.
Un Superb Shuffle ™ es uno en el que:
- No hay dos cartas (excepto Jokers) del mismo palo adyacentes.
- Ninguna carta (excepto Jokers) es adyacente a uno del mismo valor.
- Ninguna carta (excepto Jokers) es adyacente a uno de un valor adyacente (uno más alto o uno más bajo en este orden, A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K, A. Observe que Ace no puede ser adyacente a un 2 o un Rey).
- Los comodines pueden estar en cualquier posición.
- La definición de un Superb Shuffle ™ no requiere que las cartas estén en un orden diferente cada vez que se barajan. Lo cual no es muy excelente, pero es Superb ™.
Porque eso es Superb ™.
Un ejemplo podría ser:
[
"AS", "5D", "9H", "KC", "2D", "6H", "10C", "QS", "3H", "7C", "9S",
"KD", "4C", "6S", "10D", "AC", "3S", "7D", "JH", "J", "4D", "8H",
"QC", "AD", "5H", "9C", "JS", "2H", "6C", "8S", "QD", "3C", "5S",
"9D", "KH", "2S", "6D", "10H", "J", "3D", "7H", "JC", "KS", "4H",
"8C", "10S", "AH", "5C", "7S", "JD", "2C", "4S", "8D", "QH"
]
El reto:
- Escribe un código para ejecutar un sorteo excelente
- Usa cualquier idioma.
- La entrada puede ser cualquiera de :
- una baraja de cartas como se describió anteriormente en el mismo orden , como una matriz u otra estructura de lista.
- Sin entrada (el código genera una baraja de cartas en ese orden)
- La salida debe ser una baraja completa de cartas en un Superb Shuffle ™ como se describió anteriormente.
- Intente realizar su Superb Shuffle ™ en el menor número de bytes.
- Se prefiere un enlace a un intérprete en línea, como Try It Online , pero opcional.
Feliz barajando!
T
lugar de 10
?