Graduation Guarantee
문제
Gustav is studying to become an interpreter. In this line of work, knowing several languages is a must, and Gustav is already fluent in French, Mandarin, Nahuatl and even Finnish. But there is one language that Gustav struggles with: Norwegian. Before Gustav can graduate, he must complete the infamous Norwegian Conclusive Proficiency Check.
This exam consists of yes/no questions. Answering correctly gives point, answering incorrectly gives point, and not answering gives points. To pass the exam, at least points are needed. For each question, Gustav has a guess that he knows is correct with probability (). Note that , because otherwise guessing the opposite would be better.
What is the maximum possible probability of passing the exam, assuming we carefully choose which questions to answer and which ones to leave unanswered? Note that unlike a programming contest, the exam does not have instant feedback. So Gustav will answer the questions, hand in his answers, and only later be told the results.
입력
The first line contains the two integers and (). The second line contains real numbers (). These numbers will have at most digits after the decimal point.
출력
Output the probability that we pass the exam. Your answer will be considered correct if it has an absolute or relative error of at most .
예제
예제 1
3 3 0.5 0.5 0.5
0.125
예제 2
4 1 0.9 0.5 0.9 0.9
0.972