Problem B: 加分政策

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Special Judge Creator:
Submit:198 Solved:55

Description

小 Y 正在汇总自己的加分材料,现在他有 $n$ 份材料分别可以加 $a_i$ 分。时间从早到晚,学校使用 $\frac {1} {n}$ 加分政策,即按照上报材料的时间顺序从早到晚排名,对于第 $k$ 个取其分数的 $\frac {1} {k}$ 分数。现在,小 Y 要从中挑出一部分上报加分,要求使得最终所加总分最大。

问最终的最大分数为多少?如果你的输出结果与正确答案相差在 $10 ^ {-6} $ 以内,我们将判断其为正确。

Input

第一行输入一个整数 $n (1 \le n \le 2 \cdot 10 ^ 3)$ -- 表示材料的数量。

第二行输入 $n$ 个整数 $a_i (1 \le a_i \le 10 ^ 9)$ -- 表示第 $i$ 份材料的得分。

Output

输出一个浮点数表示最终的最大分数。

Sample Input Copy

3
2 5 6

Sample Output Copy

8.0000000000

HINT

C++ 使用 cout << fixed << setprecision(10) << ans; 保留小数。

C 使用 printf("%.10lf", ans); 保留小数。

其它语言请自行查找。