題意:給你兩個陣列, s[i] , c[i] ,再給你乙個式子時累加求和的相比求最大值的式子,同時你最多可以再其中刪去 k 個字母,問最終最大收益是多少?
思路分析 : 經典的 01分數規劃問題,最優的結果一定是去掉越多的值越優,想一想就知道為什麼了
**示例 :
#include using namespace std;#define ll long long
const int maxn = 1e6+5;
const int mod = 1e9+7;
const double eps = 1e-9;
const double pi = acos(-1.0);
const int inf = 0x3f3f3f3f;
int n, k;
double s[maxn], c[maxn];
double a[maxn];
bool check(double x)
sort(a+1, a+1+n);
double sum=0;
for(int i = k+1; i <= n; i++)
//printf("*** %lf\n", sum);
if (sum > 0) return true;
return false;
}int main()
for(int i = 1; i <= n; i++)
double l = 0, r = 1000.0;
for(int i = 1; i <= 50; i++)
printf("%.11lf\n", l);
return 0;
}
牛客網多校5 gpa(01分數規劃)
題目 n個物品每個物品的重量是si,價值是si ci,刪除最多k個物品使得剩下的物品的 思路 01分數規劃。條件c x 可以挑選使得單位重量的物品價值不小於x 求滿足條件的最大x 如何判斷c x 價值和 重量和 x 價值和 重量和 x 0 和 價值 重量 x 0 可以對 價值 重量 x 的值進行貪心...
01分數規劃入門
01分數規劃是這樣的一類問題,有一堆物品,每乙個物品有乙個收益ai,乙個代價bi,我們要求乙個方案使選擇的 sum sum 最大。首先我們來一道例題吧,01分數規劃的大體方法都是一樣的。例1 dropping tests poj2976 給出n個物品,每個物品有兩個屬性a和b,選擇n k個元素,詢問...
0 1分數規劃
題目鏈結 中文鏈結 附一篇大佬部落格感覺講的不錯 0 1分數規劃,不妨設 l a i b i 題目要求要讓結果最大,那麼就是l最大最終移相化簡可得 a i l b i 0,因為a 和b都是已知所以我們可以直接列舉l,當我們所求的值大於零說明l還有更優解當小於零時l沒有最優解。直接二分即可 inclu...