#ABC193D. 卡牌胜负

卡牌胜负

卡牌胜负

题目描述

写着 1,2,,91, 2, \dots, 9 的卡牌各有 KK 张,共计 9K9K 张。

将这些卡牌随机洗牌后,分给高桥君和青木君各 44 张正面朝上的卡牌和 11 张背面朝上的卡牌。

分给高桥君的卡牌用字符串 SS 表示,分给青木君的卡牌用字符串 TT 表示。

S,TS, T55 个字符的字符串,前 44 个字符由 1, 2, \dots, 9 组成,表示正面朝上的卡牌上写的数字。 最后 11 个字符是 #,表示背面朝上的卡牌。

55 张手牌的分值定义为:设 cic_i 为该手牌中包含的 ii 的张数,则分值为 i=19i×10ci\displaystyle \sum_{i=1}^9 i \times 10^{c_i}

如果高桥君的手牌分值高于青木君的手牌分值,则高桥君获胜。

求高桥君获胜的概率。

输入格式

输入按以下格式从标准输入给出:

KK
SS
TT

输出格式

用小数输出高桥君获胜的概率。

与期望答案的绝对误差或相对误差不超过 10510^{-5} 即判为正确。

样例

2
1144#
2233#
0.4444444444444444

例如,当高桥君的手牌为 11449、青木君的手牌为 22338 时,高桥君的分值是 100+2+3+400+5+6+7+8+90=621100+2+3+400+5+6+7+8+90=621,青木君的分值是 1+200+300+4+5+6+7+80+9=6121+200+300+4+5+6+7+80+9=612,高桥君获胜。

胜负由背面朝上的卡牌的大小决定,所以高桥君获胜的概率是 49\frac49

2
9988#
1122#
1.0
6
1122#
2228#
0.001932367149758454

只有当高桥君的手牌为 11222、青木君的手牌为 22281 时高桥君才获胜。

高桥君获胜的概率是 21035\frac2{1035}

100000
3226#
3597#
0.6296297942426154

数据范围

  • 2K1052 \le K \le 10^5
  • S=T=5|S| = |T| = 5
  • S,TS, T 的第 11 到第 44 个字符是 1, 2, \dots, 9 中的某一个
  • 1, 2, \dots, 9 分别最多在 SSTT 中共出现 KK
  • S,TS, T 的第 55 个字符是 #
难度 普及+/提高-
通过率
尝试 0
已通过 0
ID
2091
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签