Pertimbangkan 15 pola kartu bermain ASCII ini (kartu as melalui Joker, dan sisi belakang), di mana X
ada pengganti untuk simbol suit : (mereka terlihat lebih baik dengan jarak garis yang lebih sedikit)
------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- -------------
|AX | |2X | |3X | |4X | |5X | |6X | |7X | |8X | |9X | |10X | |JX | |QX | |KX | |J | |* * * * * * *|
| ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | |O ------- | | * * * * * * |
| | | | | | | | | | | | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | |X | | | |X | | | |X | | |K | | | |* * * * * * *|
| | | | | | X | | | | X | | | | | | | | | | | | | | | | X | | | | X | | | | | | | | X | | | | | | | | | | | | | | |E | J | | | * * * * * * |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |X X| | | |X X| | | | | | | | | | | | | | |R | O | | |* * * * * * *|
| | X | | | | | | | | X | | | | | | | | X | | | |X X| | | |X X| | | |X X| | | | X | | | | | | | | J | | | | Q | | | | K | | | | K | | | * * * * * * |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |X X| | | |X X| | | | | | | | | | | | | | | | E | J| |* * * * * * *|
| | | | | | X | | | | X | | | | | | | | | | | | | | | | | | | | X | | | | | | | | X | | | | | | | | | | | | | | | | R | O| | * * * * * * |
| | | | | | | | | | | | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | |X X| | | | X| | | | X| | | | X| | | | | K| |* * * * * * *|
| ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- | | ------- E| | * * * * * * |
| XA| | X2| | X3| | X4| | X5| | X6| | X7| | X8| | X9| | X10| | XJ| | XQ| | XK| | R| |* * * * * * *|
------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- ------------- -------------
Tulis program yang menggunakan string yang menunjukkan urutan kartu yang dipisahkan ruang menggunakan ...
A 2 3 4 5 6 7 8 9 10 J Q K
diikuti oleh salah satuC D H S
(untuk klub, berlian, hati, dan sekop) untuk 52 kartu standar.- Satu
R
untuk Joker. - Satu
B
untuk sisi belakang (kartu menghadap ke bawah).
Jadi string B AS KH 10C R JD
menunjukkan kartu menghadap ke bawah, diikuti oleh kartu as sekop, diikuti oleh raja hati, diikuti oleh sepuluh klub, diikuti oleh Joker, diikuti oleh jack berlian.
Program Anda perlu mencetak kartu bermain ASCII yang sesuai untuk stdout, menggantikan X
dengan simbol suit yang sesuai.
Sebagai contoh, output untuk B AS KH 10C R JD
menjadi
------------- ------------- ------------- ------------- ------------- -------------
|* * * * * * *| |AS | |KH | |10C | |J | |JD |
| * * * * * * | | ------- | | ------- | | ------- | |O ------- | | ------- |
|* * * * * * *| | | | | | |H | | | |C C| | |K | | | | |D | |
| * * * * * * | | | | | | | | | | | C | | |E | J | | | | | |
|* * * * * * *| | | | | | | | | | |C C| | |R | O | | | | | |
| * * * * * * | | | S | | | | K | | | | | | | | K | | | | J | |
|* * * * * * *| | | | | | | | | | |C C| | | | E | J| | | | |
| * * * * * * | | | | | | | | | | | C | | | | R | O| | | | |
|* * * * * * *| | | | | | | H| | | |C C| | | | | K| | | D| |
| * * * * * * | | ------- | | ------- | | ------- | | ------- E| | ------- |
|* * * * * * *| | SA| | HK| | C10| | R| | DJ|
------------- ------------- ------------- ------------- ------------- -------------
Anda dapat mengambil input dari stdin atau menulis fungsi yang mengambil string.
Pengajuan dengan jumlah karakter terpendek akan menang.
Bonus: Kurangi 30 dari jumlah karakter Anda jika Anda menggunakan simbol simbol Unicode hitam ♣ ♦ ♥ ♠
alih-alih C D H S
dalam output Anda. (Input selalu digunakan C D H S
.)
Catatan
- Mungkin ada lebih dari 54 kartu dalam string input dan mungkin ada duplikat kartu apa pun.
- Seharusnya tidak ada output jika inputnya adalah string kosong.
- Seharusnya tidak ada spasi tambahan selain (opsional) dua yang membentuk sudut kanan kartu terakhir.
- Anda dapat menganggap input tersebut valid.
- Pembaruan: Label kanan bawah pada kartu standar telah dibalik sehingga nilainya ada di sudut. Label Joker kanan bawah tidak berubah.