P2080 增進感情(揹包DP)

2022-10-10 19:21:14 字數 805 閱讀 8820

思路:將好感度x+y作為體積, 幸福度x-y作為作為價值, 然後就是乙個經典的揹包問題了。emmmmm,還可以特判一下,因為幸福度為0時就是最小了,沒有必要看後面的了吧。

其實,我自己做的時候,沙雕的認為是每一對的幸福度的絕對值之和,原來是總的的絕對值。

//

luogu-judger-enable-o2

#include#include

#include

using

namespace

std;

const

int inf = 0x3f3f3f

;int f[100001

], tot;

struct

nodea[

110];

bool

cmp(node a, node b)

int n, v, ans =inf;

intmain()

if (tot < v)

memset(f, inf,

sizeof

(f));

f[0] = 0

; sort(a + 1, a + n + 1

, cmp);

for (int i = 1; i <= n; ++i)}}

}for (int i = v; i <= tot; ++i)

if (abs(f[i]) < ans)ans =abs(f[i]);

if (ans == inf)cout << -1

}

洛谷 P2080 增進感情

小明和小紅的感情,是慢慢發展起來的。他們對對方分別有乙個好感值。定義兩人的親密程度為兩人的好感值之和。如果他們的親密程度達到v,則他們將走到一起。他們以後的生活將取決於兩人的好感值之差的絕對值,這個值越小,他們的生活將越幸福。現在,他們對對方的好感值都為0,小明有n件事可以幹,每件事可以增加他對小紅...

P1833 櫻花 揹包DP 多重揹包 , 混合揹包

混合揹包是指很多種揹包一起做。此題屬於多重揹包的模板題 思想是統統轉化為01揹包 題目中有01揹包 p 1 完全揹包 p 0 多重哦揹包 p k 完全揹包,只需將p t w 多重揹包,只需進行二進位制拆分 注意陣列開大 int readint while ch 0 ch 9 return x f l...

P1077 擺花 揹包DP

小明的花店新開張,為了吸引顧客,他想在花店的門口擺上一排花,共m盆。通過調查顧客的喜好,小明列出了顧客最喜歡的n種花,從1到n標號。為了在門口展出更多種花,規定第iii種花不能超過 a i 盆,擺花時同一種花放在一起,且不同種類的花需按標號的從小到大的順序依次擺列。試程式設計計算,一共有多少種不同的...