P2989 [USACO10MAR] Need For Speed S
题目描述
Bessie 正在为即将到来的赛车比赛作准备。
她有一辆赛车,质量为 $M$,且可以提供 $F$ 的力。现在她想要给这辆赛车安装一些零件(总共有 $N$ 个零件),每个零件具有属性 $M_i$ 和 $F_i$,表示其质量以及可以提供的力。
设 $X_i = 1$ 或 $0$,表示第 $i$ 个零件选或不选。在最大化
$$\dfrac{F+\sum_{i=1}^{n}X_i \cdot F_i}{M+\sum_{i=1}^{n}X_i \cdot M_i}$$
的前提下最小化
$$\sum_{i=1}^{n}X_i \cdot M_i + M.$$
输入格式
第一行是三个用空格分开的正整数 $F,\,M,\,N$。
接下来 $N$ 行,每行两个用空格分开的正整数,第 $i+1$ 行的两个数代表 $F_i$ 和 $M_i$。
输出格式
输出包含 $P$ 行,表示 Bessie 需要安装的 $P$ 个零件的下标。若 Bessie 不需要给这辆车安装零件,输出 `NONE`。
输出应按递增顺序给出,如果最佳零件集为 $\{2,4,6,7\}$,则输出应按 $2,4,6,7$ 的顺序,而不是 $4,2,7,6$ 的顺序。解决方案将是唯一的。
说明/提示
#### 数据范围
$1 \le N \le 10\,000$;
$1 \le M,M_i\le1\,000$;
$1 \le F,F_i \le 1\,000\,000$。
感谢 @tyqtyq 提供的翻译。