Alice 和 Bob 玩一局排七,一副 52 張牌平分,兩人各持 26 張。牌分 ♠ 黑桃、♥ 紅心、♦ 方塊、♣ 梅花四種花色,每種花色從 A(當作 1)到 K(當作 13)共 13 張。Alice 的手牌已給定,其餘 26 張是 Bob 的。
持有 ♦7 的人先手,且第一手必須打出 ♦7,之後兩人輪流出牌。每個花色一開始都還沒有任何牌;要先打出該花色的 7,這個花色才算「開門」、可以開始接牌——換句話說,一個花色的 7 還沒被打出之前,這個花色的牌都不能打。一個花色開門後,它攤在桌面上的牌會是一段以 7 為中心、向兩側延伸的連續區間;之後在這個花色只能接在區間的兩端,也就是比最小那張再小一、或比最大那張再大一的牌。舉例來說,桌上某花色是 5、6、7、8 時,此刻能接的只有 4 和 9。
輪到你時,只要手上有合法的牌就必須打出一張。若輪到你、手裡還有牌卻一張都接不出去,你就先出不了牌而落敗(特別注意沒有常見的蓋牌規則);先把手牌出完的人則獲勝。雙方都採取最佳策略。
下圖是一局進行到一半的盤面(此盤面不是真實盤面,只是方便說明用的例子),每一列是一個花色,攤開的牌就是已經打出的:
圖中每一列代表一個花色,攤開的牌就是已經打出的,可以看到每列都是以 7 為中心向兩側連成一段。方塊最先開門,已經從 2 鋪到 J;黑桃、紅心各延伸了一小段;梅花還沒有人打出 ♣7,所以整列空著。每個花色標成黃色虛線框的格子,是此刻兩端能接上去的牌。下方是 Alice 的手牌:亮框的三張(♣7、♠10、♦A)正落在這些端點上,輪到她時就能打出;灰掉的三張(♠K、♥J、♣2)暫時接不上——♠K 要等 10、J、Q 補齊、♣2 要等梅花開門,在那之前只能一直留在手裡。
給定 Alice 的手牌,求最佳對局下的贏家。
輸入只有一行,包含以空白分隔的 26 張牌,代表 Alice 的手牌;其餘 26 張即為 Bob 所有。每張牌以兩個字元表示,前一個字元是花色,後一個字元是點數:花色為 S(♠ 黑桃)、H(♥ 紅心)、D(♦ 方塊)、C(♣ 梅花)其中之一,點數為 A、2 到 9、T(代表 10)、J、Q、K 其中之一。保證這 26 張牌彼此相異、且皆為合法的牌。
輸出一行,為最佳策略下的贏家名字,即 Alice 或 Bob。
SJ C6 D8 C5 S9 D5 SK H4 H6 C7 DT HT C4 ST S3 H2 H9 SQ D4 S7 D9 S8 DA D7 H3 D6
Alice
DT D5 H7 DQ S7 ST HT H6 D2 CA S3 HJ D7 S8 S4 S9 C4 C2 HK S5 HQ H4 SK H3 CK D4
Bob
D7 S9 DJ C5 HA C9 DT C2 D8 DQ CJ S8 CT H2 SJ DK C6 ST HQ CK S5 SQ H7 C7 S3 S6
Bob
SA S2 S3 S4 S5 S6 S7 S8 S9 ST SJ SQ SK HA H2 H3 H4 H5 H6 H7 H8 H9 HT HJ HQ HK
Bob
對於範例測資 1,兩人一開始的手牌,依花色整理如下:
| 花色 | Alice | Bob |
| :-: | :-- | :-- |
| ♠ 黑桃 | 3 7 8 9 10 J Q K | A 2 4 5 6 |
| ♥ 紅心 | 2 3 4 6 9 10 | A 5 7 8 J Q K |
| ♦ 方塊 | A 4 5 6 7 8 9 10 | 2 3 J Q K |
| ♣ 梅花 | 4 5 6 7 | A 2 3 8 9 10 J Q K |
♦7 在 Alice 手上,所以 Alice 先手、第一手打出 ♦7,之後兩人輪流出牌。
雙方都採最佳策略時,其中一種出牌順序如下:
Alice ♦7 → Bob ♥7 → Alice ♠7 → Bob ♠6 → Alice ♠8 → Bob ♠5 → Alice ♠9 → Bob ♠4 → Alice ♠3 → Bob ♠2 → Alice ♠10 → Bob ♠A → Alice ♠J → Bob ♥8 → Alice ♠Q
走完這 15 手後,會走到下面這個盤面(桌上已打出的牌):
♠ 黑桃: A 2 3 4 5 6 7 8 9 10 J Q (兩端可接:K)
♥ 紅心: 7 8 (兩端可接:6、9)
♦ 方塊: 7 (兩端可接:6、8)
♣ 梅花: (沒有人打出 ♣7,整列空著) (要先打出:7)
此時還沒出完的手牌是:
| 花色 | Alice | Bob |
| :-: | :-- | :-- |
| ♠ 黑桃 | K | (無) |
| ♥ 紅心 | 2 3 4 6 9 10 | A 5 J Q K |
| ♦ 方塊 | A 4 5 6 8 9 10 | 2 3 J Q K |
| ♣ 梅花 | 4 5 6 7 | A 2 3 8 9 10 J Q K |
現在輪到 Bob,但所有能接的位置(♠K、♦6、♦8、♥6、♥9、♣7)對應的牌全都在 Alice 手上。Bob 手裡明明還有牌,卻一張都打不出去,成為先出不了牌的人,因此 Alice 獲勝。
2026 YTP 國中組初賽 p5
| No. | Testdata Range | Constraints | Score |
|---|---|---|---|
| 1 | 0~3 | 範例測試資料 | 0 |
| 2 | 4~41 | 無額外限制 | 20 |