Menurut pertanyaan ini, Superb Shuffle ™ ️ didefinisikan sebagai setumpuk penuh kartu (termasuk pelawak) yang mengikuti rangkaian aturan ini:
- Tidak ada dua kartu (kecuali Pelawak) dari jenis yang sama yang berdekatan.
- Tidak ada kartu (kecuali Joker) yang berdekatan dengan salah satu dari nilai yang sama.
- Tidak ada kartu (kecuali Joker) yang berdekatan dengan salah satu nilai yang berdekatan (satu lebih tinggi atau lebih rendah dalam urutan ini, A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K, A. Perhatikan bahwa Ace tidak dapat berdekatan dengan 2 atau King).
- Jokers dapat berada di posisi apa pun.
Kartu-kartu dinyatakan sebagai nilai (A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K), diikuti oleh suit (C, D, H, S). Misalnya 'AS' adalah Ace of Spades. Jokers diwakili oleh satu huruf J.
- Tulis beberapa kode untuk menunjukkan apakah array kartu adalah Superb Shuffle ™ ️ atau tidak.
- Gunakan bahasa apa pun yang Anda suka.
- Cobalah melakukannya dalam jumlah byte terkecil.
Kasus uji:
1: Ini Luar Biasa ™ ️
[
"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: Ini semua diurutkan
[
"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: Aces bersama
[
"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: Crazy 8's
[
"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: Juga luar biasa
[
"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: Ace by 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: Ace by King
[
"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: Pelawak bersama
[
"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: Setelan / nilai yang berdekatan dipisahkan oleh Jokers
[
"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
atau J, JS
mungkin juga menghasilkan negatif palsu.
4D, J, 3D
..