P1877 HAOI2012 音量調節

2022-05-09 17:56:41 字數 1158 閱讀 2241

音量用乙個整數描述。輸入檔案中整數beginlevel,代表吉他剛開始的音量,整數maxlevel,代表吉他的最大音量。音量不能小於0也不能大於maxlevel。輸入中還給定了n個整數c1,c2,c3,...,cn,表示在第i首歌開始之前吉他手想要改變的音量是多少。

吉他手想以最大的音量演奏最後一首歌,你的任務是找到這個最大音量是多少。

輸入格式:

第一行依次為三個整數n, beginlevel, maxlevel。

第二行依次為n個整數 c1,c2,c3,...,cn。

資料規模:

1<=n<=50, 1<=ci<=maxlevel, 1<=maxlevel<=1000, 0<=beginlevel<=maxlevel

輸出格式:

輸出演奏最後一首歌的最大音量。如果吉他手無法避免音量低於0或者高於maxlevel,輸出-1。

輸入樣例#1:

3 5 10

5 3 7

輸出樣例#1:

10

這是我有史以來第一次一眼秒掉動規題目,

1min讀題+2mincode+0msac23333

感覺告訴我這應該是某種揹包問題,

但是我從來沒有見過。

思路很簡單

用dp[i][j]表示第i個物品,音量調到j是否是可行的

1 #include2 #include3 #include4 #include5

using

namespace

std;

6const

int maxn=2001;7

const

int inf=0x7ffff

;8 inline void read(int &n)914

intdp[maxn][maxn];

15int

n,beginlevel,maxlevel;

16int

change[maxn];

17int

main()

1828

for(int i=maxlevel;i;i--)

2935

}36 printf("-1"

);37

return0;

38 }

洛谷 P1877 HAOI2012 音量調節

音量用乙個整數描述。輸入檔案中整數beginlevel,代表吉他剛開始的音量,整數maxlevel,代表吉他的最大音量。音量不能小於0也不能大於maxlevel。輸入中還給定了n個整數c1,c2,c3,cn,表示在第i首歌開始之前吉他手想要改變的音量是多少。吉他手想以最大的音量演奏最後一首歌,你的任...

HAOI2012 音量調節

音量用乙個整數描述。輸入檔案中整數beginlevel,代表吉他剛開始的音量,整數maxlevel,代表吉他的最大音量。音量不能小於0也不能大於maxlevel。輸入中還給定了n個整數c1,c2,c3,cn,表示在第i首歌開始之前吉他手想要改變的音量是多少。吉他手想以最大的音量演奏最後一首歌,你的任...

HAOI2012 音量調節

嘟嘟嘟 這道題只要狀態一想出來,這題就做完了。另 dp i j 表示 i 首歌音量 j 能否達到,則如果dp i 1 j 1,那麼dp i j c i dp i j c i 1.然後最後從max到0反向遍歷dp n i 即可。注意這題陣列要開2e3,否則因為j c i 陣列越界造成了一些詭異的錯誤,...