01分數規劃牛客網 入門題

2022-06-27 03:21:12 字數 856 閱讀 6060

題意:給你兩個陣列, 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...