#P2794. Double Patience
Double Patience
问题重述
Double Patience 是一个单人游戏,使用标准的张牌的牌组。游戏开始时,牌被洗牌后,按堆,每堆张牌的方式放在桌子上,所有牌面朝上。玩家轮流操作,每次操作可以选择任意两堆的顶牌,如果这两张牌的等级相同(rank),则将它们移除。如果有多个可能的选择,玩家会随机选择一个,每个可能的选择被选中的概率相等。如果所有牌都被移除,玩家获胜;如果还有牌剩余但无法进行任何操作,玩家失败。
给定游戏的初始牌局,计算George按照上述随机策略获胜的概率。
输入格式
输入包含行,每行描述一堆牌,从底牌到顶牌。每张牌由等级和花色组成,例如“KS”表示黑桃K。牌之间用空格分隔。
输出格式
输出一个实数,表示George获胜的概率,精确到。
示例输入
AS 9S 6C KS
JC QH AC KH
7S QD JD KD
QS TS JS 9H
6D TD AD 8S
QC TH KC 8D
8C 9D TC 7C
9C 7H JH 7D
8H 6S AH 6H
示例输出
0.589314
来源
Northeastern Europe 2005