Tantangan:
Diberi dua kartu lima tangan, tentukan yang satu menang dengan peringkat standar tangan poker .
Memasukkan:
Sepuluh kartu dipisahkan oleh spasi dari stdin atau sebagai argumen baris perintah, mana yang Anda inginkan. Lima kartu pertama adalah kartu Player 1 sedangkan kartu terakhir adalah kartu Player 2. Setiap kartu akan berupa string dua huruf dari bentuk RS di mana R adalah peringkat dan S sesuai. Jajarannya berkisar 2-9, T untuk sepuluh, dan J, Q, K, dan A untuk Jack, Queen, King, dan Ace. Setelannya masing-masing adalah H, D, C, S untuk Hati, Berlian, Klub, dan Sekop. Anda harus menampilkan jumlah pemain yang menang: '1' atau '2'.
Contoh Kartu:
AS - the Ace of Spades
QD - the Queen of Diamonds
2C - the Two of Clubs
TH - the Ten of Hearts
Contoh Input ke Output:
5H 5C 6S 7S KD 2C 3S 8S 8D TD -> 2
Penjelasan: Player 1 memiliki Pair of Fives sementara Player 2 memiliki Pair of Eights.
5D 8C 9S JS AC 2C 5C 7D 8S QH -> 1
Penjelasan: Tidak ada Player yang memiliki sesuatu yang istimewa, tetapi kartu tinggi Player 1 adalah Ace sedangkan kartu tinggi Player 2 adalah Queen.
2D 9C AS AH AC 3D 6D 7D TD QD -> 2
Penjelasan: Player 1 memiliki Three Aces, Player 2 memiliki Flush of Diamonds.
4D 6S 9H QH QC 3D 6D 7H QD QS -> 1
Penjelasan: Kedua pemain memiliki Pair of Queens, tetapi kartu tertinggi kedua Player 1 adalah Sembilan sedangkan Player 2 adalah Tujuh.
Aturan dan Klarifikasi:
- Lihat peringkat standar tangan poker untuk rincian membandingkan tangan.
- Anda dapat mengasumsikan bahwa tidak ada kartu berulang di setiap pasang tangan.
- Anda dapat berasumsi bahwa ada pemenang yang pasti dalam setiap kasus.
- Gugatan tidak menjadi faktor dalam peringkat tangan. Misalnya, dua flush royal dari suit yang berbeda sama (oleh karena itu setiap input di mana kedua pemain memiliki flush royal tidak valid oleh aturan sebelumnya).
- Karena ini adalah kode golf, jawaban terpendek menang.
Catatan:
- Terkait dengan pertanyaan ini dan ini satu ini .
- Berdasarkan Masalah Project Euler 54