Gemäß dieser Frage wird ein Superb Shuffle ™ ️ als ein vollständiges Kartenspiel (einschließlich Joker) definiert, das diesen Regeln folgt:
- Es sind keine zwei Karten (außer Joker) derselben Farbe nebeneinander.
- Keine Karte (außer Joker) grenzt an eine Karte mit demselben Wert.
- Keine Karte (außer Joker) grenzt an einen benachbarten Wert (einen höheren oder einen niedrigeren in dieser Reihenfolge, A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K,). A. Beachten Sie, dass Ass weder einer 2 noch einem König benachbart sein kann.
- Die Joker können sich in jeder Position befinden.
Die Karten werden als Wert (A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K) ausgedrückt, gefolgt von einer Farbe (C, D, H, S). Zum Beispiel ist 'AS' das Pik-Ass. Die Joker werden durch einen einzigen Buchstaben J dargestellt.
- Schreiben Sie einen Code, um anzugeben, ob ein Kartenarray ein Superb Shuffle ™ ist oder nicht.
- Verwenden Sie eine beliebige Sprache.
- Versuchen Sie dies in der kleinsten Anzahl von Bytes.
Testfälle:
1: Dies ist Superb ™ ️
[
"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"
]
# true
2: Das ist alles sortiert
[
"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"
]
# false
3: Asse zusammen
[
"AC", "AS", "AD", "AH", "5D", "9H", "KC", "2D", "6H", "10C", "QS",
"9S", "KD", "4C", "6S", "10D", "3S", "7D", "JH", "J", "4D", "8H",
"QC", "5H", "9C", "JS", "2H", "6C", "8S", "QD", "3C", "5S", "3H",
"9D", "KH", "2S", "6D", "10H", "J", "3D", "7H", "JC", "KS", "4H",
"8C", "10S", "5C", "7S", "JD", "2C", "4S", "8D", "7C", "QH"
]
# false
4: Verrückte 8er
[
"AS", "5D", "9H", "KC", "2D", "6H", "10C", "QS", "3H", "7C", "9S",
"KD", "4C", "6S", "10D", "AC", "3S", "7D", "JH", "J", "4D", "AH",
"QC", "AD", "5H", "9C", "JS", "2H", "6C", "QD", "3C", "5S", "10S",
"9D", "KH", "2S", "6D", "10H", "J", "3D", "7H", "JC", "KS", "4H",
"5C", "7S", "JD", "2C", "4S","QH", "8D", "8S", "8C", "8H"
]
# false
5: Auch hervorragend
[
"AS", "6H", "9S", "AC", "4D", "9C", "QD", "2S", "7H", "10S", "2C",
"5D", "10C", "KD", "3S", "8H", "JS", "3C", "6D", "JC", "AH", "4S",
"9H", "QS", "4C", "7D", "QC", "2H", "5S", "10H", "KS", "5C", "8D",
"KC", "3H", "6S", "JH", "AD", "6C", "9D", "J", "4H", "7S", "QH",
"2D", "7C", "10D", "J", "5H", "8S", "KH", "3D", "8C", "JD"
]
# true
6: Ass um 2
[
"AS", "2S", "6H", "9S", "AC", "4D", "9C", "QD", "7H", "10S", "2C",
"5D", "10C", "KD", "3S", "8H", "JS", "3C", "6D", "JC", "AH", "4S",
"9H", "QS", "4C", "7D", "QC", "2H", "5S", "10H", "KS", "5C", "8D",
"KC", "3H", "6S", "JH", "AD", "6C", "9D", "J", "4H", "7S", "QH",
"2D", "7C", "10D", "J", "5H", "8S", "KH", "3D", "8C", "JD"
]
# false
7: Ass von König
[
"AS", "KH", "2S", "6H", "9S", "AC", "4D", "9C", "QD", "7H", "10S",
"2C", "5D", "10C", "KD", "3S", "8H", "JS", "3C", "6D", "JC", "AH",
"4S", "9H", "QS", "4C", "7D", "QC", "2H", "5S", "10H", "KS", "5C",
"8D", "KC", "3H", "6S", "JH", "AD", "6C", "9D", "J", "4H", "7S",
"QH", "2D", "7C", "10D", "J", "5H", "8S", "3D", "8C", "JD"
]
# false
8: Joker zusammen
[
"AS", "5D", "9H", "KC", "2D", "6H", "10C", "QS", "3H", "7C", "9S",
"KD", "4C", "6S", "10D", "AC", "3S", "7D", "JH", "J", "J", "4D",
"8H", "QC", "AD", "5H", "9C", "JS", "2H", "6C", "8S", "QD", "3C",
"5S", "9D", "KH", "2S", "6D", "10H", "3D", "7H", "JC", "KS", "4H",
"8C", "10S", "AH", "5C", "7S", "JD", "2C", "4S", "8D", "QH"
]
# true
9: Angrenzende Farbe / Wert durch Joker getrennt
[
"AS", "6H", "9S", "AC", "4D", "J", "4H", "2S", "7H", "10S", "2C",
"5D", "10C", "KD", "3S", "8H", "JS", "3C", "6D", "JC", "AH", "4S",
"9H", "QS", "4C", "7D", "QC", "2H", "5S", "10H", "KS", "5C", "8D",
"KC", "3H", "6S", "JH", "AD", "6C", "9D", "J", "QD", "7S", "QH",
"2D", "7C", "10D", "8C", "5H", "8S", "KH", "3D", "9C", "JD"
]
# true
4D, J, 3D
oder J, JS
können auch zu falsch negativen Ergebnissen führen.
4D, J, 3D
..