有$n$份工作,完成 $1$ 个单位时间的第 $i$ 项工作会获得 $a_i$
$b_i$两项属性值。 工作的单位时间数可以不是整数 。你需要在尽量短的时间内使$\sum a\geq p,\sum b\geq q$
考虑选择一个工作的时候工作的为$k\times (a_i,b_i)$,相当于$(a_i,b_i)这条直线$
如果此时再加入一个工作,安排时间形成新的效率在$(x,y)\in[(a_i,b_i)-(a_ii,b_ii)]$上显然效率最高就是$(p,q)$与其交点。
如果再加入一个点,一定是越往外相交越好,可以画一画。其实就是维护一个凸包。然后枚举凸包上的险段与其交点。求最小比例。
- 加入$(0,0)$
- 考虑如果就做一个工作,需要$(x_{max},0)$与$(0,y_{max})$。才能保证可以有交点。
- 求出交点保证在线段上!
代码
1 |
|