洛谷P3947 肝活動

2022-08-03 02:54:13 字數 849 閱讀 8860

本人是noip2018省二的蒟蒻,最近練習狀壓,總感覺樓下的題解晦澀難懂,我決定自己寫一篇題解造福一下廣大蒟蒻

首先看資料範圍就猜到了狀壓dp……

設f[i]表示完成狀態i(二進位制位,狀壓)這些歌獲得的獎勵;

則答案為f[(1《對於乙個狀態i,若第j首歌沒完成,即i&(1具體實現請見**

1 #include 2 #include 3 #include 4

using

namespace

std;

5int n,m,t,f[1

<<23];6

int timee[25],s[25

],tot;

7char name[25][51];8

int tt[1

<<23],bef[1

<<23],ans[1

<<23];9

void printans(int

now)

14int

main()

21 memset(f,-1,sizeof

(f));

22 f[0]=0;23

for(int i=0;i<1

<) 34}

35}36if(tot>t||f[(1

<1]40 printf("

%d\n

",f[(1

<1

]);41 printans((1

<1

);42

return0;

43 }

time變數在洛谷上評測好像ce,所以只能用timee了

ps:獎勵可能是負數,所以和0取乙個max即可

洛谷P3947 肝活動 狀壓DP

題目描述 這樣的規則對 yume 這樣的老玩家來說本應是輕而易舉,但不巧的是 yume 把活動的結束時間記成了活動的開始時間,以至於當他上線躍躍欲試的時候,驚恐地發現活動已經快要結束了。現在他想知道,在剩餘的時間之內,他能否完成所有的歌 達成獎勵的分數線拿到活動卡。為了節省時間,他把這個問題交給了你...

洛谷P5049 洛谷P5022 題解 旅行

原題 資料加強版 加強版 參考你谷題解 終於調過了 又是一如既往的申必錯誤 noi plus石錘了 原題的資料允許我們 o n 2 暴力斷邊,但是加強版的資料達到了 n log n 級別,我們必須在斷邊這一環節尋求更好的解法。考慮我們進入環後在何處回溯 根據繼續走環走到的點分類 設當前已經從 b 走...

洛谷練習P2279 P1346

2020年,人類在火星上建立了乙個龐大的基地群,總共有n個基地。起初為了節約材料,人類只修建了n 1條道路來連線這些基地,並且每兩個基地都能夠通過道路到達,所以所有的基地形成了乙個巨大的樹狀結構。如果基地a到基地b至少要經過d條道路的話,我們稱基地a到基地b的距離為d。由於火星上非常乾燥,經常引發火...