Bạn của bạn đã mời bạn tham gia một trò chơi bài xì phé cao vào phút cuối và, với tư cách là một nhà khoa học máy tính, bạn đã quyết định sử dụng các kỹ năng của mình để đạt được lợi thế trong trò chơi. Nhiệm vụ của bạn sẽ là, được trao 2 cards
(bàn tay của bạn) và 0, 3, 4 or 5 cards
(thẻ đã xử lý), bạn phải quyết định bàn tay tốt nhất bạn có thể nhận được sẽ là gì. Nếu tất cả 7 thẻ được đưa ra làm đối số, câu trả lời là khá rõ ràng. Nếu được đưa ra ít hơn, vấn đề trở nên phức tạp hơn. Tuy nhiên, điều này không đủ để cung cấp cho bạn lợi thế mà bạn đang tìm kiếm, bạn cũng phải tính toán tay bài tốt nhất có thể từ các thẻ còn lại để hiểu đối thủ của bạn có thể có gì.
Giữ lại
Nếu bạn không biết về Hold'em, mỗi người chơi trong trò chơi sẽ bắt đầu với 2 lá bài dưới dạng 'bàn tay' của họ. Trong vòng 3 'lượt', các thẻ bổ sung được tiết lộ sẽ được chia sẻ giữa tất cả người chơi. Lần đầu tiên, 3 thẻ được tiết lộ. Lần thứ hai, 1 lần nữa và lần thứ ba một thẻ cuối cùng được tiết lộ. Hai thẻ được đưa ra đầu tiên đại diện cho bàn tay của bạn, trong khi thẻ sau đại diện cho 0, 3, 4 hoặc 5 thẻ được đưa ra bởi các lượt tiếp theo.
Số có thể:
[2,3,4,5,6,7,8,9,T(10),J,Q,K,A]
Bộ đồ có thể:
[S,C,H,D]
Toàn bộ sàn:
[2S,3S,4S,5S,6S,7S,8S,9S,TS,JS,QS,KS,AS, # Spades.
2C,3C,4C,5C,6C,7C,8C,9C,TC,JC,QC,KC,AC, # Clubs.
2H,3H,4H,5H,6H,7H,8H,9H,TH,JH,QH,KH,AH, # Hearts.
2D,3D,4D,5D,6D,7D,8D,9D,TD,JD,QD,KD,AD] # Diamonds.
Xếp hạng tay:
1:Royal Flush (A-K-Q-J-10, all from the same suit).
2:Straight Flush (Sequential cards, all from the same suit).
3:Four-of-a-Kind (Self explanatory).
4:Full House (3-of-a-kind and a 2-of-a-kind).
5:Flush (All cards are from the same suit).
6:Straight (Sequential Cards, any suits).
7:3-of-a-Kind (Self explanatory).
8:2-Pair (Double 2-of-a-Kind).
9:Pair (2-of-a-Kind).
10:High Card (You have absolutely nothing except a single card).
Hãy lấy một hoặc hai ví dụ và đi qua chúng:
Ví dụ đơn giản:
[AS, AC],[AH,AD,9S,9C,9H]
-> 3
(Bốn loại một), 3
(Bốn loại)
Bàn tay tốt nhất có thể bạn sẽ có trong thiết lập này là bốn bàn tay tốt. Bàn tay tốt nhất có thể mà đối thủ của bạn có thể có cũng là loại 4, vì bạn không thể có KQJ10 trong tay 2 quân bài của họ.
[5C,2C],[6C,4C,JH,JD]
-> 2
(Flush thẳng), 3
(4-of-a-Kind)
Bạn có nguy cơ bị lật thẳng, nhưng vì bạn có 2 / 5C trong tay, không ai khác là do bạn cầm cả hai thẻ giữa. Điều tốt nhất họ có thể hy vọng là có 2 Jacks bỏ túi và có được một Jack trên flop.
[JS,JC],[]
-> 1
(Flush Hoàng gia), 1
(Flush Hoàng gia)
Không có thông tin nào bạn có thể sử dụng để chống lại chúng, tất cả những gì bạn có thể nói vào lúc này là chúng chỉ có thể có một viên kim cương / trái tim, nhưng cũng giống như bạn có thể có được sự tuôn ra của hoàng gia như chúng làm. Trong thực tế, tất cả các đầu vào mà flop vẫn chưa xảy ra sẽ dẫn đến câu trả lời 1-1.
[2C,4S],[3C,7S,9D,AH,JD]
-> 10
(Thẻ cao), 7
(Loại 3)
Đây là một ví dụ về nơi bạn hoàn toàn say mê, và không có khả năng một dòng chảy thẳng hay tuôn ra trên sông. Có nghĩa là bàn tay tốt nhất ở đây là những con át chủ bài dẫn đến kết quả 3-of-a-Kind.
Yêu cầu I / O
- Đầu vào phải được phân tách giữa những gì trong tay bạn và những gì là kiến thức công cộng; cách này có thể sẽ dễ dàng hơn bất kể việc thực hiện.
- Thẻ có thể là bộ dữ liệu hoặc chuỗi, tùy thuộc vào bạn.
- Tay và Sân chơi có thể là mảng hoặc chuỗi phân cách.
- Đầu ra phải là hai chỉ mục từ danh sách các tay tôi đã cung cấp (EG [2.1]).
- Nó có thể được trả về như một phần của chức năng, được in ra bàn điều khiển hoặc đầu ra một cách phù hợp.
- Phải có hai giá trị riêng biệt, một giá trị tốt nhất cho bạn, một giá trị tốt nhất có thể.
- 10 có thể được đại diện như một
T
hoặc như10
, bất cứ điều gì có ý nghĩa đối với bạn. - Sơ hở tiêu chuẩn là không được phép.
Tiêu chí chiến thắng
- Đây là mã golf , số byte thấp nhất với bộ ngắt kết nối của ngày đăng.
A
và một 1
. Mọi thứ khác có vẻ tốt.
A
và1
trong các thẻ được phép có thể? Ngoài ra tôi không nghĩ rằng thực sự có một lý do thuyết phục để yêu cầu viết tắt khuôn mặt trên các giá trị số như thế nào11
.