แรงบันดาลใจจากความท้าทายนี้และที่เกี่ยวข้องกับคนนี้
พื้นหลัง
Badugi [bæduːɡiː] เป็นตัวแปรโป๊กเกอร์วาดต่ำ
เหตุการณ์$ 1K Pokerstars World Cup Of Online Poker เริ่มต้นภายใน3ชั่วโมงและฉันต้องรู้ว่ามือของฉันดีแค่ไหน!
เกมนี้ใช้สำรับมาตรฐาน52ใบซึ่งมีสี่ชุดและสิบสามอันดับ ชุดมีเรียงลำดับและจะต้องติดฉลากcdhs
; ทหาร - สั่งซื้อจากสูงสุดK
ไปต่ำสุดA
- KQJT98765432A
มี เช่นดาดฟ้าเต็มอาจจะแสดงดังต่อไปนี้ (คั่นด้วยช่องว่าง):
Kc Kd Kh Ks Qc Qd Qh Qs Jc Jd Jh Js Tc Td Th Ts 9c 9d 9h 9s 8c 8d 8h 8s 7c 7d 7h 7s 6c 6d 6h 6s 5c 5d 5h 5s 4c 4d 4h 4s 3c 3d 3h 3s 2c 2d 2h 2s Ac Ad Ah As
ผู้เล่นแต่ละคนจะแจกไพ่สี่ใบจากเด็คมีสี่รอบเดิมพันกับสามรอบในระหว่าง (ผู้เล่นมักมีไพ่สี่ใบพวกเขามีตัวเลือกในการเปลี่ยน 0-4 ของไพ่ของพวกเขาด้วยดีลเลอร์ใหม่จากแต่ละคน ของสามรอบการวาดภาพ)
หากผู้เล่นมากกว่าหนึ่งคนยังคงทำงานหลังจากรอบนี้มีการเปิดไพ่ดังนั้นมือที่แข็งแกร่งที่สุดชนะการเดิมพันแบบวางเดิมพัน
เกมนี้เล่นบอลต่ำดังนั้นมือที่ต่ำที่สุดชนะและตามที่กล่าวไว้ข้างต้น A
(เอซ) ต่ำ นอกจากนี้การจัดอันดับมือแตกต่างจากโป๊กเกอร์รูปแบบอื่น ๆ และอาจสร้างความสับสนสำหรับผู้เริ่มต้น
"มือ" ที่เล่นเป็นชุดที่มีอันดับต่ำที่สุดที่ทำจากจำนวนสูงสุดของทั้ง "ชุดสูท" (ชุดที่แตกต่างกันทั้งหมด) และ "ชุดชั้นนอก" (ไพ่ชุดที่แตกต่างกันทั้งหมด) ที่เป็นไปได้ ) นั่นคือ: หากมีไพ่สี่ใบที่มีทั้งชุดที่แตกต่างกันและอันดับที่แตกต่างอย่างใดอย่างหนึ่งจะมีมือไพ่ 4 ใบ (เรียกว่า "badugi"); ถ้าไม่มีไพ่ 4 ใบ แต่มีชุดไพ่หรือชุดไพ่สามใบทั้งชุดที่แตกต่างกันและชุดที่แตกต่างกันอย่างใดอย่างหนึ่งมีไพ่ 3 ใบ (หนึ่งใบเลือกได้ดีที่สุด); ถ้าใครไม่มีไพ่ 4 ใบหรือไพ่ 3 ใบอย่างใดอย่างหนึ่งอาจมีมือ 2 ใบ แต่ถ้าไม่มีใครมีมือ 1 ใบ
ดังนั้นไพ่ที่ดีที่สุดที่เป็นไปได้คือไพ่ 4 ใบซึ่งเป็นไพ่ที่ไม่ได้อันดับ
4-3-2-A
ต่ำที่สุดของไพ่สี่ใบที่แตกต่างกันซึ่งมักเรียกกันว่า "หมายเลข 1" มือที่อ่อนแอที่สุดที่เป็นไปได้จะเป็นไพ่ 1 ใบและเป็นไปได้โดยถืออย่างแน่นอนเท่านั้นK
Kc Kd Kh Ks
ทราบว่า
4c 3h 2c As
เป็นไม่ได้เป็น "หมายเลข 1" ตั้งแต่4c
และ2c
เป็นชุดเดียวกัน แต่มันเป็นที่แข็งแกร่งของมือ 3 ใบ3-2-A
ก็ดึงกับคนอื่น ๆ3-2-1
s (ชอบKh 3d 2s Ah
) และเต้นอื่น ๆ มือ 3 บัตร แต่ แพ้ไพ่ทั้ง 4 ใบ (ซึ่งอาจจะอ่อนเท่ากับK-Q-J-T
)- ไพ่ 3 ใบที่เป็นไปได้อื่น ๆ ที่สามารถทำได้
4c 3h 2c As
คือ4-3-A
แต่นั่นคือไพ่ ที่อ่อนกว่า (สูงกว่า) ดังนั้นจึงไม่เลือก
- ไพ่ 3 ใบที่เป็นไปได้อื่น ๆ ที่สามารถทำได้
ในทำนองเดียวกัน
8d 6h 3s 2h
มือไพ่ 3 ใบเล่น8-3-2
- มีสองชุด off-rank off-suit ชุดขนาด 3 และ8-3-2
ดีกว่า (ต่ำ) กว่า8-6-3
ตั้งแต่สาม (หรือ "แต้ม") ต่ำกว่าหก
การเปรียบเทียบมือกันคือตรรกะเดียวกัน - ไพ่ 4 ใบใด ๆ ที่มีไพ่ 3 ใบใด ๆ ที่มีไพ่ 3 ใบจะมีไพ่ 2 ใบใด ๆ ที่มี 2 ใบและไพ่ 2 ใบที่ใดก็ได้ใน 1 ใบในขณะที่ไพ่ที่ใช้แล้วมีจำนวนเท่ากัน เมื่อเทียบจากอันดับสูงสุดของพวกเขาลงไปต่ำสุดของพวกเขา (ตัวอย่างเช่น: 8-4-2
เต้น8-5-A
แต่ไม่ใด ๆ8-4-A
, 8-3-2
หรือ7-6-5
)
ความท้าทาย:
ให้คอลเลคชั่นที่ไม่ได้เรียงลำดับสองชุดแต่ละการ์ดสี่ใบให้ระบุการ์ดที่ชนะการเปิดไพ่ Badugi (ระบุทั้งคู่ว่าเป็นการจับสลาก)
การป้อนข้อมูลอาจมีอะไรที่สมเหตุสมผล:
- สตริงเดียวของไพ่ทั้งแปดใบตามที่ระบุไว้ด้านบน (มีหรือไม่มีช่องว่าง) โดยที่ไพ่สี่ใบด้านซ้ายเป็นไพ่มือเดียวและไพ่อีกใบหนึ่งอยู่ด้านขวา (มีเครื่องหมายคั่น) หรือรายการของตัวละครในแบบเดียวกัน
- รายการของสองสาย - หนึ่งต่อมือหรือรายการของตัวละครในแบบเดียวกัน
- สองสตริงแยกกันหรือรายการอินพุตหนึ่งต่อมือ
- บัตรที่อยู่ในมืออาจถูกแยกออกไปด้วยเช่นกัน (ดังนั้นรายชื่อรายการจึงไม่เป็นไร)
อย่างไรก็ตามโปรดทราบ:
- บัตรอาจไม่ถูกจัดเรียงในลำดับใด ๆ ก่อนที่จะป้อน
- ... และชุดสูทและอันดับได้รับการแก้ไขตามป้ายอักขระที่ระบุไว้ที่นี่ - หากภาษาของคุณไม่รองรับโครงสร้างดังกล่าวเพียงแค่แนะนำสิ่งที่สมเหตุสมผลและถามว่าเป็นทางเลือกที่ยอมรับได้หรือไม่เนื่องจากข้อ จำกัด ด้านภาษาของคุณ
ผลลัพธ์ที่ควรจะเป็น
- จัดรูปแบบเช่นเดียวกับการป้อนข้อมูลหรือเป็นตัวแทนพิมพ์นั้น หรือ
- เป็นหนึ่งในสามของผลที่แตกต่างกันและสอดคล้องกัน (เช่น
"left"
,"right"
,"both"
หรือ1
,2
,3
ฯลฯ )
จริง ๆ - ตราบใดที่มีความชัดเจนว่าอินพุตสองตัวใดที่มีการระบุว่าควรจะดี
กรณีทดสอบ
input -> output
(notes)
----------------------------------------------------------------------------
3c 2s 4d Ah - As 3h 2d 4h -> 3c 2s 4d Ah
(4-card 4-3-2-A beats 3-card 3-2-A)
3c 2s 4d Ah - As 2c 3d 4h -> 3c 2s 4d Ah - As 2c 3d 4h
(4-card 4-3-2-A draws with 4-card 4-3-2-A)
2d Ac 4h 3c - Kh Ad 9s 2c -> Kh Ad 9s 2c
(3-card 4-2-A loses to 4-card K-9-2-A)
Kc Tc Qc Jc - Ac Ad Ah As -> Ac Ad Ah As
(1-card T loses to 1-card A)
9c 9h Qc Qh - Qs Kh Jh Kd -> Qs Kh Jh Kd
(2-card Q-9 loses to 3-card K-Q-J)
2d 5h 7c 5s - 2h 3c 8d 6c -> 2d 5h 7c 5s
(3-card 7-5-2 beats 3-card 8-3-2)
3s 6c 2d Js - 6h Jd 3c 2s -> 6h Jd 3c 2s
(3-card 6-3-2 loses to 4-card J-6-3-2)
Ah 6d 4d Ac - 3h 2c 3s 2s -> 3h 2c 3s 2s
(2-card 4-A loses to 2-card 3-2)
2h 8h 6h 4h - 6d 2d 5d 8d -> 2h 8h 6h 4h - 6d 2d 5d 8d
(1-card 2 = 1-card 2)
นี่คือ รหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะต่อภาษาและรหัสที่สั้นที่สุดชนะโดยรวม อย่าปล่อยให้ภาษากอล์ฟตีคุณออกไปจากการส่งในภาษาอื่นและ ... ขอให้สนุก!
O
ที่ด้านหน้า
[['3c', '2s', '4d', 'Ah'], ['As', '3h', '2d', '4h']]
สมเหตุสมผลไหม