得分显示
题号:NC265939
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

小菜鸡今天在打某款 ingteresting 的游戏。每当他通关游戏的某一关卡,该关卡的累计得分值就会增加 \mathrm{x}。由于 \mathrm{x} 是一个正实数,因此存在累计得分值不为整数的情况。但是该游戏的累计得分值只能显示整数部分,于是小菜鸡突发奇想,就有了下面的题。

已知小菜鸡共通关该关卡 \mathrm{n} 次,依次给出小菜鸡每次通过关卡后,该关卡显示的累计得分值(即累计得分值的整数部分),请求出单次通过该关卡所增加的得分值 \mathrm{x} 最大为多少?

输入描述:

第一行给出一个整数 \mathrm{n}(1\le \mathrm{n} \le 10^{6})

下一行共 \mathrm{n} 个整数,第 \mathrm{i} 个整数 \mathrm{a_i} (0\le \mathrm{a_i} \le 10^{9}) 表示小菜鸡通过该关卡第 \mathrm{i} 次时所显示的累计得分值。

特殊地,可以认为在刚开始时,关卡的累计得分值为 0

输入数据保证存在至少一个合法解。

输出描述:

输出一个实数,表示 \mathrm{x} 可取到的最大值。你需要保证输出结果与答案绝对误差不超过 10^{-4}
示例1

输入

复制
5
0 0 0 0 0

输出

复制
0.2000000000

说明

样例一中,每次通关所显示的总分值都是 0 ,说明总得分值其真实值所处范围为 [0,1)。因此,单次通关可能增加的得分值最大应为 0.1999999..... ,保留 10 位小数后应为 0.2000000000
示例2

输入

复制
3
1 2 4

输出

复制
1.5000000000