一副纸牌是S
西服和R
等级的直角乘积。许多(尽管不是全部)纸牌游戏使用S=4
和R∊{6,8,13}
。一副H
牌从甲板上发出。它的分布(也称为“手形”)是一个数组,用于描述您从每套西服中获得多少张牌,而忽略西服的顺序(因此,就像是多套)。鉴于分布D
满足len(D)=S
,1≤sum(D)=H≤S×R
,0≤D[i]≤R
,D[i]≥D[i+1]
,发现它发生的概率。
输入:一个整数R
和一个数组D
。
输出:小数点后至少5位数字的概率;尾随零可以被跳过;科学记数法还可以。
禁止漏洞。最短的胜利。
测试:
R D probability
13 4 4 3 2 -> 0.2155117564516334148528314355068773
13 5 3 3 2 -> 0.1551684646451760586940386335649517
13 9 3 1 0 -> 0.0001004716813294328274372174524508
13 13 0 0 0 -> 0.0000000000062990780897964308603403
8 3 2 2 1 -> 0.4007096203759162602321667950144035
8 4 2 1 1 -> 0.1431105787056843786543452839337155
8 2 2 1 0 -> 0.3737486095661846496106785317018910
8 3 1 1 0 -> 0.2135706340378197997775305895439377
15 4 4 3 2 1 -> 0.1428926269185580521441708109954798
10 3 0 0 -> 0.0886699507389162561576354679802956
10 2 1 0 -> 0.6650246305418719211822660098522167
10 1 1 1 -> 0.2463054187192118226600985221674877
另请参阅Wikipedia中的桥手模式。
编辑:删除不必要的限制 H≤R
编辑:添加约束 H≥1