题库练习 Andrey and Problem
← 上一题 下一题 →

A9513 | Andrey and Problem

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Andrey needs one more problem to conduct a programming contest. He has $n$ friends who are always willing to help. He can ask some of them to come up with a contest problem. Andrey knows one value for each of his fiends — the probability that this friend will come up with a problem if Andrey asks him.

Help Andrey choose people to ask. As he needs only one problem, Andrey is going to be really upset if no one comes up with a problem or if he gets more than one problem from his friends. You need to choose such a set of people that maximizes the chances of Andrey not getting upset.

输入格式

The first line contains a single integer $n$ $(1<=n<=100)$ — the number of Andrey's friends. The second line contains $n$ real numbers $p_{i}$ $(0.0<=p_{i}<=1.0)$ — the probability that the $i$ -th friend can come up with a problem. The probabilities are given with at most 6 digits after decimal point.

输出格式

Print a single real number — the probability that Andrey won't get upset at the optimal choice of friends. The answer will be considered valid if it differs from the correct one by at most $10^{-9}$ .

输入输出样例

输入 #1
4
0.1 0.2 0.3 0.8
输出 #1
0.800000000000
输入 #2
2
0.1 0.2
输出 #2
0.260000000000
C++ 编辑器
输入
输出