연구 생산성 지수
면접 대비시간 제한1초메모리 제한1024 MB
각 논문의 채택 확률이 주어질 때, 일부를 골라 제출하여 a^a/s (s는 제출 수, a는 채택 수)의 기댓값을 최대로 만드는 부분집합을 찾는다.
문제
Angela는 이제 막 박사 과정에 들어간 학생이고, 올해 학회의 논문 마감이 다가오는 것이 걱정된다. 그녀는 지난 한 해 동안 여러 프로젝트를 진행했다. 다행히 대부분의 프로젝트가 성공적으로 마무리되어 n편의 후보 논문을 만들어 냈다. 하지만 모든 논문이 똑같이 좋은 것은 아니다. 어떤 논문은 결과가 더 좋다. 지도 교수는 결과가 "충분히 좋은" 논문만 제출해서 채택될 가능성을 높이라고 조언한다.
Angela의 연구실은 논문 제출의 성공을 평가하는 독특한 방식을 쓴다. 연구 생산성 지수는 aa/s로 정의한다. 여기서 s는 제출한 논문의 총 수이고, a는 학회에 채택된 논문의 수이다. a = 0이면 지수는 0으로 정의한다. 예를 들어:
- 논문 1편을 제출해 채택되면 지수는 11/1 = 1이다.
- 논문 4편을 제출해 모두 채택되면 지수는 44/4 = 4이다.
- 논문 10편을 제출해 3편이 채택되면 지수는 33/10 ≈ 1.390389이다.
- 논문 5편을 제출해 4편이 채택되면 지수는 44/5 ≈ 3.031433이다.
- 논문 3편을 제출해 모두 거절되면(a = 0) 지수는 0이다.
직관적으로 연구 생산성 지수를 높이려면 채택률을 높게 유지하면서 최대한 많은 논문을 채택받아야 한다.
Angela는 n편의 논문마다 학회가 그 논문을 채택할 확률을 정확히 알고 있다. 그녀가 어떤 논문을 제출할지 현명하게 고른다면, 연구 생산성 지수의 기댓값은 최대 얼마인가?
입력
첫째 줄에 Angela의 후보 논문 수 n (1 ≤ n ≤ 100)이 주어진다. 둘째 줄에 각 논문이 채택될 확률을 나타내는 n개의 정수가 공백으로 구분되어 주어진다. 각 확률 값은 1 이상 100 이하의 정수 퍼센트로 주어진다.
출력
Angela의 연구 생산성 지수의 기댓값의 최댓값을 출력한다. 절대 오차 또는 상대 오차가 10-6 이하이면 정답으로 인정한다.