#abc275g. [abc275_g]Infinite Knapsack

[abc275_g]Infinite Knapsack

题目描述

NN 种物品,每种物品有无限多件。第 ii 种物品的重量为 AiA_i,体积为 BiB_i,价值为 CiC_i

Takahashi 拥有等级 XX,他可以携带总重量不超过 XX 且总体积不超过 XX 的物品。在这个条件下,他可以选择携带任意数量的同一种物品,或者放弃某些种类的物品。

定义 f(X)f(X) 为 Takahashi 能携带的物品的最大总价值。可以证明极限 $\\displaystyle\\lim_{X\\to \\infty} \\frac{f(X)}{X}$ 存在。请找出这个极限。

约束条件

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 108Ai,Bi,Ci10910^8 \leq A_i,B_i,C_i \leq 10^9
  • 输入中的所有值都是整数。

输入

输入从标准输入给出,格式如下:

NN
A1A_1 B1B_1 C1C_1
A2A_2 B2B_2 C2C_2
\vdots
ANA_N BNB_N CNC_N

输出

输出答案。如果与评测机的答案的相对或绝对误差不超过 10610^{-6},则被认为是正确的。


示例输入 1

2
100000000 200000000 100000000
200000000 100000000 100000000

示例输出 1

0.6666666666666667

X=300000000X=300000000 时,Takahashi 可以携带总重量不超过 300000000300000000 且总体积不超过 300000000300000000 的物品。

他可以选择携带一件第 11 种物品和一件第 22 种物品。那么,物品的总价值为 100000000+100000000=200000000100000000+100000000=200000000。这是最大可达到的价值,因此 dfracf(300000000)300000000=dfrac23\\dfrac{f(300000000)}{300000000}=\\dfrac{2}{3}

可以证明 $\\displaystyle\\lim_{X\\to \\infty} \\frac{f(X)}{X}$ 等于 dfrac23\\dfrac{2}{3}。因此,答案是 0.6666666...0.6666666...


示例输入 2

1
500000000 300000000 123456789

示例输出 2

0.2469135780000000