AT_abc308_c [ABC308C] Standings

题目描述

有 $N$ 个人,编号为 $1$ 到 $N$,每个人都进行了若干次抛硬币实验。已知第 $i$ 个人正面朝上的次数为 $A_i$,反面朝上的次数为 $B_i$。 第 $i$ 个人的抛硬币**成功率**定义为 $ \displaystyle\frac{A_i}{A_i+B_i} $。请将 $1$ 到 $N$ 号人的编号按照成功率从高到低的顺序排列。如果有多个人的成功率相同,则在这些人中按编号从小到大的顺序排列。

输入格式

输入以如下格式从标准输入读入。 > $N$ > $A_1$ $B_1$ > $\vdots$ > $A_N$ $B_N$

输出格式

请按成功率从高到低的顺序输出 $1$ 到 $N$ 号人的编号,编号之间用空格分隔。若成功率相同,则按编号升序输出。

说明/提示

### 限制条件 - $2 \leq N \leq 2 \times 10^5$ - $0 \leq A_i, B_i \leq 10^9$ - $A_i + B_i \geq 1$ - 输入的所有数值均为整数 ### 样例解释 1 第 $1$ 个人的成功率为 $0.25$,第 $2$ 个人的成功率为 $0.75$,第 $3$ 个人的成功率为 $0.5$。按成功率从高到低排序后,输出顺序如样例所示。 ### 样例解释 2 第 $1$、$2$ 个人的成功率相同,因此需要按编号升序输出。 由 ChatGPT 4.1 翻译