单人游戏 Seven Up 使用一副标准的 52 张牌进行,每张牌有 13 种可能的面值,分别记为 A, 2, 3, 4, 5, 6, 7, 8, 9, T, J, Q 和 K。每种面值恰好有 4 张牌。
初始时,有 7 张牌面朝下放置在编号为 1 到 7 的位置上。A 的值为 1,面值为 2–7 的牌对应的值为 2 到 7,其余牌没有值。
单次游戏回合包括玩家从牌堆顶部抽一张牌(初始牌堆有 $52 - 7 = 45$ 张牌)。重复执行以下步骤直到回合结束:
- 如果抽到的牌没有值(即面值不是 A, 2, 3, 4, 5, 6 或 7 中的任意一个),则回合结束。
- 否则,如果玩家手中持有的牌所对应位置上的牌已经面朝上,则回合结束。
- 否则,玩家将手中的牌与对应位置上的牌进行交换,除了刚才放置在该位置的牌现在变为面朝上之外,当前回合继续。
在回合结束时,如果所有 7 个位置上的牌都已面朝上,则游戏结束。
如果剩余的 45 张牌被随机排列,且每种排列出现的概率相等,那么直到游戏结束所需的期望回合数是多少?
更具体地说,对于任意 $1 \le k \le 45$,令 $p_k$ 表示游戏在完成 $k$ 个回合后结束的概率(基于剩余 45 张牌的随机排列)。你需要计算 $\sum_{k=1}^{45} k \cdot p_k$。
输入格式
输入为一个字符串,包含恰好 7 个字符,字符选自 A23456789TJQK,表示初始时面朝下放置在对应位置上的 7 张牌的面值。该字符串中没有任何面值出现超过 4 次。
输出格式
输出一个数值,表示直到游戏结束所需的期望回合数。你的答案应具有小于 $10^{-6}$ 的绝对或相对误差。
样例
样例输入 1
A9Q22T5
样例输出 1
19.88129713423831
样例输入 2
JQQQKKK
样例输出 2
20.91314505643106