#6820. 气球充气 inflation-T5

气球充气 inflation-T5

题目描述

在 NWERC 2018 中,组织者对气球做了一些特别的安排。他们没有购买大小相同的气球,而是购买了大小从 11nn 的每一种整数大小的气球各一个。大小为 ss 的气球容量为 ss 分升。

为了避免手动给气球充气,组织者还购买了 nn 个氦气罐。每个气罐只能用于给一个气球充气,并且必须把气罐中的氦气全部充入这个气球中。也就是说,在气罐用完之前,不能把它从气球上取下来。

不幸的是,这些气罐是在旧货市场买来的,里面的氦气量可能各不相同,有些甚至可能是空的。为了尽可能利用这些气罐,组织者必须聪明地将气罐和气球进行配对。

组织者希望把所有气罐分别分配给不同的气球,使得所有气球中,充气比例最低的那个气球,它的充气比例尽可能大。

请你求出这个最大的最小充气比例。

注意:如果气球被充入超过自身容量的氦气,它就会爆炸。必须避免任何气球爆炸。

输入格式

第一行,一个整数 nn,表示气球和气罐的数量。

第二行,nn 个整数 c1,c2,,cnc_1,c_2,\ldots,c_n,其中 cic_i 表示第 ii 个气罐中氦气的数量,单位为分升。

输出格式

如果可以在不让任何气球爆炸的情况下完成分配,输出一个实数 ff,表示能够保证所有气球至少被充到自身容量的 ff 倍时,ff 的最大值。

如果无论如何分配都会导致某个气球爆炸,输出 -1

答案的绝对误差或相对误差不超过 10610^{-6} 即可。

样例

6
6 1 3 2 2 3
0.6
2
2 2
-1
5
4 0 2 1 2
0

数据范围与提示

  • 1n2×1051 \le n \le 2 \times 10^5
  • 0cin0 \le c_i \le n