#abc308c. [abc308_c]Standings

[abc308_c]Standings

题目描述

NN 个人,编号从 11NN,他们抛了一些次硬币。已知第 ii 个人抛硬币的结果是 AiA_i 个正面和 BiB_i 个反面。

ii 个人的成功率定义为 displaystylefracAiAi+Bi\\displaystyle\\frac{A_i}{A_i+B_i}。将人员 1,ldots,N1,\\ldots,N 按照成功率降序排列,并且按照编号升序解决平局。

约束条件

  • 2leqNleq2times1052\\leq N \\leq 2\\times 10^5
  • 0leqAi,Bileq1090\\leq A_i, B_i\\leq 10^9
  • Ai+Bigeq1A_i+B_i \\geq 1
  • 所有输入值均为整数。

输入

输入数据从标准输入中获取,格式如下:

NN A1A_1 B1B_1 vdots\\vdots ANA_N BNB_N

输出

以空格分隔打印人员 1,ldots,N1,\\ldots,N 的编号,按照成功率降序排列,并且按照编号升序解决平局。


示例输入 1

3
1 3
3 1
2 2

示例输出 1

2 3 1

人员 11 的成功率为 0.250.25,人员 22 的成功率为 0.750.75,人员 33 的成功率为 0.50.5

按照成功率降序排列得到示例输出的顺序。


示例输入 2

2
1 3
2 6

示例输出 2

1 2

注意,人员 1122 的成功率相同,应按照人员编号升序打印。


示例输入 3

4
999999999 1000000000
333333333 999999999
1000000000 999999997
999999998 1000000000

示例输出 3

3 1 4 2