時間限制: 1 s
空間限制: 32000 kb
題目等級 : ** gold
題解bessie像她的諸多姊妹一樣,因為從farmer john的草地吃了太多美味的草而長出了太多的贅肉。所以fj將她置於乙個及其嚴格的節食計畫之中。她每天不能吃多過h公斤的乾草。
bessie只能吃一整捆乾草;當她開始吃一捆乾草的之後就再也停不下來了。她有乙個完整的n (1 <= n <= 500)捆可以給她當作晚餐的乾草的清單。她自然想要盡量吃到更多的乾草。很自然地,每捆乾草只能被吃一次(即使在列表中相同的重量可能出現2次,但是這表示的是兩捆乾草,其中每捆乾草最多只能被吃掉一次)。
給定乙個列表表示每捆乾草的重量s_i (1 <= s_i <= h), 求bessie不超過節食的限制的前提下可以吃掉多少乾草(注意一旦她開始吃一捆乾草就會把那一捆乾草全部吃完)。
輸入描述 input description
* 第一行: 兩個由空格隔開的整數: h 和 n
* 第2到第n+1行: 第i+1行是乙個單獨的整數,表示第i捆乾草的重量s_i。
輸出描述 output description
* 第一行: 乙個單獨的整數表示bessie在限制範圍內最多可以吃多少公斤的乾草。
樣例輸入 sample input
56 4
1519
2021
樣例輸出 sample output
56資料範圍及提示 data size & hint
5 <= h <= 45,000
分類標籤 tags 點此展開
思路:洪水題。
#include#include#include
#include
#define maxn 510
using
namespace
std;
inth,n;
int num[maxn],f[45010
];int
main()
CODEVS 電話連線
題目描述 description 乙個國家有n個城市。若干個城市之間有 線連線,現在要增加m條 線 線當然是雙向的了 使得任意兩個城市之間都直接或間接經過其他城市有 線連線,你的程式應該能夠找出最小費用及其一種連線方案。輸入描述 input description 輸入檔案的第一行是n的值 n 10...
codevs 石子歸併
codevs 1048 石子歸併 題目描述 description 有n堆石子排成一列,每堆石子有乙個重量w i 每次合併可以合併相鄰的兩堆石子,一次合併的代價為兩堆石子的重量和w i w i 1 問安排怎樣的合併順序,能夠使得總合併代價達到最小。輸入描述 input description 第一行...
CODEVS 倒水問題
題目描述 有兩個無刻度標誌的水壺,分別可裝 x 公升和 y 公升 x,y 為整數且均不大於 100 的水。設另有一水 缸,可用來向水壺灌水或接從水壺中倒出的水,兩水壺間,水也可以相互傾倒。已知 x 公升壺為空 壺,y 公升壺為空壺。問如何通過倒水或灌水操作,用最少步數能在x或y公升的壺中量出 z z...