抛硬币概率(Coins)
题目描述
N を正の奇数とします。
N 枚のコインがあります。 コインには 1, 2, …, N と番号が振られています。 各 i (1 ≤ i ≤ N) について、コイン i を投げると、確率 pi で表が出て、確率 1 − pi で裏が出ます。
太郎君は N 枚のコインをすべて投げました。 このとき、表の個数が裏の個数を上回る確率を求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
N p1 p2 … pN
输出格式
表の個数が裏の個数を上回る確率を出力せよ。 絶対誤差が 10−9 以下ならば正解となる。
样例输入 #1
3
0.30 0.60 0.80
样例输出 #1
0.612
样例输入 #2
1
0.50
样例输出 #2
0.5
样例输入 #3
5
0.42 0.01 0.42 0.99 0.42
样例输出 #3
0.3821815872
数据范围
制約
- N は奇数である。
- 1 ≤ N ≤ 2999
- pi は実数であり、小数第 2 位まで与えられる。
- 0 < pi < 1
Sample Explanation 1
表の個数が裏の個数を上回るような各ケースの確率を計算すると、次のようになります。 - (コイン 1, コイン 2, コイン 3) = (表, 表, 表) となる確率は、0.3 × 0.6 × 0.8 = 0.144 である。 - (コイン 1, コイン 2, コイン 3) = (裏, 表, 表) となる確率は、0.7 × 0.6 × 0.8 = 0.336 である。 - (コイン 1, コイン 2, コイン 3) = (表, 裏, 表) となる確率は、0.3 × 0.4 × 0.8 = 0.096 である。 - (コイン 1, コイン 2, コイン 3) = (表, 表, 裏) となる確率は、0.3 × 0.6 × 0.2 = 0.036 である。 よって、表の個数が裏の個数を上回る確率は、0.144 + 0.336 + 0.096 + 0.036 = 0.612 です。
Sample Explanation 2
例えば、0.500, 0.500000001, 0.499999999 などを出力しても正解となります。
知识点与难度
本题涉及的知识点从属于 GESP 8级,难度(CF Rating):1400。
测试点分布
| Subtask |
分值 |
测试点编号 |
说明 |
| 0 |
15 |
1~3 |
样例 |
| 1 |
25 |
4~9 |
小规模 N≤19 / 特殊: N=1 |
| 2 |
30 |
10~17 |
中等规模 N≤599 |
| 3 |
18~25 |
满规模 N≤2999 O(N^2) 概率 DP 测试 |
出处:原题链接