德州扑克(Texas hold 'em,也称为 Texas holdem, hold 'em, holdem)是最流行的扑克变种之一。请阅读以下规则,因为它们可能与常规规则不同。
现在,Alice 和 Bob 两人正在玩德州扑克。在每局游戏开始时,每位玩家持有两张牌,称为底牌(hole cards)。在本题中,与常规德州扑克中底牌面朝下不同,两位玩家都知道所有四张底牌。随后,五张公共牌分三个阶段面朝上发出。这些阶段包括三张牌(“翻牌圈”,the flop),随后是一张额外的牌(“转牌”,the turn 或“第四街”),以及最后一张牌(“河牌”,the river 或“第五街”)。所有玩家都知道已经发出的面朝上的牌。
所有牌均从一副标准的 52 张扑克牌中抽出。一副标准的 52 张牌包含四种花色:梅花(♣)、方块(♦)、红桃(♥)和黑桃(♠),每种花色有 13 个点数。每种花色包括 Ace (A)、King (K)、Queen (Q) 和 Jack (J),以及从 2 到 10 的数字牌。每张牌最多只能被抽出一次。
单张牌的点数排名如下(从高到低):Ace, King, Queen, Jack, 10, 9, 8, 7, 6, 5, 4, 3, 2。每位玩家从七张牌(五张公共牌和两张底牌)的任意组合中寻求最好的五张牌组合。
下表按价值递增的顺序展示了可能的五张牌牌型。每种牌型都有特定的五张牌排序方式,如下所述。以下部分描述了如何比较两手牌,这与常规规则相同。
高牌 (Highcard):牌的简单数值。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 > a_2 > a_3 > a_4 > a_5$。 此处及下文中,$a_i$ 表示第 $i$ 张牌的点数。注意,虽然此处的图片展示了牌型的示例,但图片中的牌可能尚未按正确顺序排列。
对子 (Pair):两张点数相同的牌。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 = a_2$,$a_3 > a_4 > a_5$,$a_1 \neq a_3$,$a_1 \neq a_4$ 且 $a_1 \neq a_5$。
两对 (Two pairs):两组两张点数相同的牌。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 = a_2$,$a_3 = a_4$,$a_1 > a_3$,$a_1 \neq a_5$ 且 $a_3 \neq a_5$。
三条 (Three of a kind):三张点数相同的牌。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 = a_2 = a_3$,$a_4 > a_5$,$a_1 \neq a_4$ 且 $a_1 \neq a_5$。
顺子 (Straight):五张点数递增的序列。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得对于所有 $1 \le i \le 4$,$a_i$ 的点数恰好比 $a_{i+1}$ 高一级。特殊情况下,如果 $a_5$ 是 Ace,$a_4$ 可以是 2。在这种情况下,Ace 被视为比 2 低一级。
同花 (Flush):五张花色相同的牌。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得所有五张牌花色相同且 $a_1 > a_2 > a_3 > a_4 > a_5$。
葫芦 (Full house):三条和一对的组合。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 = a_2 = a_3$ 且 $a_4 = a_5$。
四条 (Four of a kind):四张点数相同的牌。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得 $a_1 = a_2 = a_3 = a_4$。
同花顺 (Straight flush):同花色的顺子。牌按 $a_1 a_2 a_3 a_4 a_5$ 排序,使得所有五张牌花色相同,且对于所有 $1 \le i \le 4$,$a_i$ 的点数恰好比 $a_{i+1}$ 高一级。特殊情况下,如果 $a_5$ 是 Ace,$a_4$ 可以是 2。在这种情况下,Ace 被视为比 2 低一级。
比较两手牌时,首先比较两手牌的牌型。例如,当一手牌是四条,另一手牌是葫芦时,四条总是胜过葫芦。
如果两手牌的牌型相同,则比较牌的点数。我们将按上述方式对牌进行排序,并逐一比较。首先比较第一张牌。如果一手牌的第一张牌点数更高,则该手牌获胜。如果两手牌的第一张牌点数相同,则比较第二张牌,依此类推。如果所有位置的牌点数都相同,则平局。牌的花色在比较中从不考虑。例如,♣5, ♦5, ♥5, ♠2, ♣2 胜过 ♦3, ♠3, ♥3, ♦A, ♥A:因为它们都是葫芦,我们首先比较三条的点数,发现 $5 > 3$。
考虑 Alice 的底牌是 ♣A, ♦4,Bob 的底牌是 ♥2, ♠3 的情况。公共牌是 ♠A, ♥4, ♠5, ♣Q, ♥Q。Alice 的最佳牌型(从她的底牌和公共牌中选出五张)是 ♣A, ♠A, ♣Q, ♥Q, ♠5,即两对。Bob 的最佳牌型是 ♠5, ♥4, ♠3, ♥2, ♠A,即顺子。因此,Bob 获胜。
玩家在每一轮有四种选择:让牌(check)、跟注(call)、加注(raise)或弃牌(fold)。
游戏流程如下: 1. 阶段 1:52 张牌随机洗牌。 前两张牌面朝上作为 Alice 的底牌。 第三和第四张牌面朝上作为 Bob 的底牌。 第五、六、七张牌面朝下作为翻牌。 第八张牌面朝下作为转牌。 * 第九张牌面朝下作为河牌。 然后,Alice 和 Bob 都下注 $w$ 美元,且两人手中各有 $m$ 美元。 2. 阶段 2:开始下注轮,Alice 和 Bob 轮流下注。 3. 阶段 3:翻牌面朝上,随后开始下注轮。 4. 阶段 4:转牌面朝上,随后开始下注轮。 5. 阶段 5:河牌面朝上,随后开始下注轮。 6. 如果上述阶段中没有玩家弃牌,则比较他们的手牌。手牌更好者获胜。如果两手牌相等,则平局。
游戏结束时,假设 Alice 下注 $a$ 美元,Bob 下注 $b$ 美元。如果平局,两位玩家各获得 $\frac{a+b}{2}$ 美元。如果有胜者,胜者获得 $a+b$ 美元,败者获得 0 美元。
如果玩家在游戏结束时手中剩余 $x$ 美元,且作为游戏结果获得了 $y$ 美元,则他/她在游戏结束时总共拥有 $x+y$ 美元。
每个下注轮流程如下: 1. Alice 的回合:Alice 做出决定。 2. Bob 的回合:Bob 做出决定。 3. 如果 Bob 选择加注,则回到 Alice 的回合。否则,下注轮结束。
每位玩家有四种可能的决定。假设当前玩家下注 $a$ 美元,另一位玩家下注 $b$ 美元(可以证明 $b$ 总是不少于 $a$)。则: check(让牌):仅当 $a = b$ 时可用。如果玩家选择让牌,则什么都不会发生。 call(跟注):仅当 $a < b$ 时可用。假设当前玩家手中还有 $c$ 美元。当玩家选择跟注时,他/她必须额外下注 $b - a$ 美元。 raise(加注):此选择总是可用。假设当前玩家手中还有 $c$ 美元。那么,他/她可以选择一个整数 $d \in (b, a + c]$,并额外下注 $d - a$ 美元。 fold(弃牌):此选择总是可用。然而,当玩家选择弃牌时,他/她将输掉游戏,游戏立即结束。
现在,阶段 1 结束:四张底牌已面朝上,两位玩家都已下注 $w$ 美元,且手中各有 $m$ 美元。假设两位玩家都采取最优策略,旨在最大化游戏结束时他们拥有的预期金额。你的任务是计算 Alice 的最大预期金额。
输入格式
第一行包含一个整数 $T(1 \le T \le 10)$,表示测试用例的数量。 对于每个测试用例,第一行包含两个整数 $w$ 和 $m$ $(0 \le w, m \le 50)$。 接下来四行,每行包含两个字符 $c$ 和 $k$,中间用空格隔开($c \in \{0, 1, 2, 3\}$,$k \in \{2, 3, 4, 5, 6, 7, 8, 9, T, J, Q, K, A\}$)。其中 $c = 0, 1, 2, 3$ 分别代表梅花(♣)、方块(♦)、红桃(♥)和黑桃(♠),$k = T$ 代表点数 10,其他 $k$ 的值代表相应的点数。 前两张牌代表 Alice 的底牌,后两张牌代表 Bob 的底牌。保证这四张牌互不相同。
输出格式
输出一行,包含一个不可约分数:问题的答案。例如,当答案为 3.5, 0, 1 或 0.999 时,你需要分别输出 7/2, 0/1, 1/1 或 999/1000。
样例
输入 1
2 10 10 0 A 1 A 2 A 3 A 10 10 0 A 1 Q 2 K 2 J
输出 1
20/1 557855/23782
Example set of 52 playing cards; 13 of each suit: clubs, diamonds, hearts, and spades