01分数规划是这样的一类问题,有一堆物品,每一个物品有一个收益ai,一个代价bi,我们要求一个方案使选择的∑ai/∑bi最大。
首先我们来一道例题吧,01分数规划的大体方法都是一样的。
例: Dropping Tests poj2976
给出n个物品,每个物品有两个属性a和b,选择n-k个元素,询问∑ai/∑bi∑ai/∑bi的最大值。
1<=n<=1000,0<=k<n,0<=ai<=bi<=1000000000。
首先这题显然是兹磁二分的,而∑ai/∑bi≥x∑ai/∑bi≥x就等价于∑ai−x∑bi≥0∑ai−x∑bi≥0。
所以我们发现二分完把ai-x*bi排序后把最大的n-k个选出来就行了。