9726 - 单人纸牌

单人纸牌游戏,共 36 张牌分成 9 叠,每叠 4 张牌面向上。每次,游戏者可以从某两个不同的牌堆最顶上取出两张牌面相同的牌(如黑桃 10 和梅花 10)并且一起拿走。如果最后所有纸牌都被取走,则游戏者就赢了,否则游戏者就输了。

George 很热衷于玩这个游戏,但是一旦有时有多种选择的方法,George 就不知道取哪一种好了,George 会从中随机地选择一种走,例如:顶上的 9 张牌为 \tt KS,\tt KH,\tt KD,\tt 9H,\tt 8S,\tt 8D,\tt 7C,\tt 7D,\tt 6H,显然有 5 种取法:\tt (KS,KH),(KS,KD),(KH,KD),(8S,8D),(7C,7D),当然 George 取到每一种取法的概率都是 1/5

有一次,George 的朋友 Andrew 告诉他,这样做是很愚蠢的,不过 George 不相信,他认为如此玩最后成功的概率是非常大的。请写一个程序帮助 George 证明他的结论:计算按照他的策略,最后胜利的概率。

输入

输入共 9 行,每行 4 组用空格分开的字串,每个字串两个字符,分别表示牌面和花色,按照从堆底到堆顶的顺序给出。

输出

一行,最后胜利的概率,精确到小数点后 6 位。

样例

输入

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

来源

NEERC

时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题