P8244 [COCI 2013/2014 #3] KOLINJE

题目描述

在一年一度的生猪屠宰会上,屠夫 Bajs 正在进行活动的最后一个环节——将自己那条屡获殊荣的火腿拿出一部分,分给参加活动的所有人。 今年的生猪屠宰会一共有 $n$ 个人参加,其中第 $i$ 个人目前已经吃了 $a_i$ 千克火腿。Bajs 将自己的火腿按照 $b_1:b_2:\cdots:b_n$ 的比例分给所有人,换句话说,令 $S=\sum\limits_{j=1}^nb_j$,则第 $i$ 个人将分到总火腿重量的 $\dfrac{b_i}S$。 但是,直到现在,Bajs 也没能确定他要拿出的火腿总量,因为在给每个人分完火腿并吃完以后,现场将根据每个人吃的火腿的千克数从大到小列出一个排名表(如果有两个人吃的肉的千克数相同,则按照两个人的编号从小到大排序),并宣布本次生猪屠宰会的年度人物,即排名表的第一位。虽然 Bajs 曾多次受到他人贿赂,但是他仍旧不愿改变分配的比例,并说他很诚实并且心地善良。Bajs 是个重度强迫症患者,因此他希望排名表上的人的编号从前往后依次为 $1,2,\cdots,n$。请你帮助 Bajs 确定他要拿出的火腿总量,以满足 Bajs 的要求。

输入格式

第一行输入一个整数 $n$,表示参加生猪屠宰会的人数。 随后 $n$ 行,每行输入两个整数 $a_i,b_i$,分别表示第 $i$ 个人已经吃的火腿的千克数和在火腿的分配中所占的比重(具体见『题目描述』部分)。

输出格式

如果无论 Bajs 拿出多少火腿都不能满足要求,输出 `-1`。 否则,输出一个**实数** $x$,表示 Bajs 拿出的火腿千克数。你需要保证: - $0\leqslant x\leqslant 10^7$。 - $x$ 的小数点后不得超过 $12$ 个数位。建议自行对答案四舍五入后再输出。 上面两点中若有至少一点不满足,均会被判定为 `WA`。 如有多解,输出任意一个解即可。即**你不需要保证 Bajs 拿出的火腿千克数最小**。

说明/提示

**【样例 1 解释】** Bajs 拿出了 $10.5$ 千克火腿,由于分配的比例为 $1:2:0$,因此三个人依次分配到 $3.5$ 千克、$7$ 千克和 $0$ 千克火腿,最终三个人依次共吃了 $10.5$ 千克、$10$ 千克和 $10$ 千克火腿。这满足 Bajs 的要求。 **【数据范围与限制】** 对于所有数据,$2\leqslant n\leqslant 1000$,$0\leqslant a_i,b_i\leqslant 10^6$。 **【题目来源】** 本题来源自 **_[COCI 2013-2014](https://hsin.hr/coci/archive/2013_2014/) [CONTEST 3](https://hsin.hr/coci/archive/2013_2014/contest3_tasks.pdf) T4 KOLINJE_**,按照原题数据配置,满分 $120$ 分。 由 [Eason_AC](https://www.luogu.com.cn/user/112917) 翻译整理提供。 欢迎对[本题 checker](https://www.luogu.com.cn/paste/7p24epxh) 提出改进意见。