Research Productivity Index
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

Angela is a new PhD student and she is nervous about the upcoming paper submission deadline of this year's research conference. She has been working on multiple projects throughout the past year. Luckily most of the projects concluded successfully, and she came up with  candidate papers. However not all of the papers were born equal——some have better results than others. Her advisor believes she should only submit the papers with "good enough" results so they have a high chance of getting accepted.

Angela's research group has a unique way of evaluating the success of paper submissions. They use the research productivity index, defined as , where  is the total number of papers submitted, and  is the number of papers that are accepted by the conference. When , the index is defined to be zero. For example:

  • if one paper is submitted and it gets accepted, the index is ;

  • if 4 papers are submitted and all get accepted, the index is ;

  • if 10 papers are submitted and 3 get accepted, the index is ;

  • if 5 papers are submitted and 4 get accepted, the index is ;

  • if 3 papers are submitted and all get rejected (a = 0), the index is 0.

Intuitively, to get a high research productivity index one wants to get as many papers accepted as possible while keeping the acceptance rate high.

For each of her  papers, Angela knows exactly how likely it is that the conference would accept the paper. If she chooses wisely which papers to submit, what is the maximum expected value of her research productivity index?

输入描述:

The first line of the input has a single integer , the number of Angela's candidate papers. The next line has  space-separated integers giving the probability of each paper getting accepted. Each probability value is given as an integer percentage between  and , inclusive.

输出描述:

Output the maximum expected value of Angela's research productivity index. Your answer is considered correct if it has an absolute or relative error of no more than .
示例1

输入

复制
5
30 50 70 60 90

输出

复制
2.220889579
示例2

输入

复制
6
30 90 30 90 30 90

输出

复制
2.599738456
示例3

输入

复制
4
10 10 10 10

输出

复制
0.368937005