辰辰是個天資聰穎的孩子,他的夢想是成為世界上最偉大的醫師。為此,他想拜附近最有威望的醫師為師。醫師為了判斷他的資質,給他出了乙個難題。醫師把他帶到乙個到處都是草藥的山洞裡對他說:「孩子,這個山洞裡有一些不同的草藥,採每一株都需要一些時間,每一株也有它自身的價值。我會給你一段時間,在這段時間裡,你可以採到一些草藥。如果你是乙個聰明的孩子,你應該可以讓採到的草藥的總價值最大。」
如果你是辰辰,你能完成這個任務嗎?
第一行有 22 個整數 tt(1 \le t \le 10001≤t≤1000)和 mm(1 \le m \le 1001≤m≤100),用乙個空格隔開,tt 代表總共能夠用來採藥的時間,mm 代表山洞裡的草藥的數目。
接下來的 mm 行每行包括兩個在 11 到 100100 之間(包括 11 和 100100)的整數,分別表示採摘某株草藥的時間和這株草藥的價值。
輸出在規定的時間內可以採到的草藥的最大總價值。
輸入
70 3輸出71 100
69 1
1 2
3這是一道01揹包問題的模板題,具體解析可看此文:動態規劃專題詳細總結(常見簡單型別)
#include#include#define max(a, b) (a)>(b)?a:b
int dp[1010] = ;
int t[110] , v[110];
int main()
for (int i = 1; i <= m; i++) }
int maxn = 0;
for (int i = 0; i <= t; i++)
printf("%d\n", maxn);
return 0;
}
P1048 採藥 01揹包模板)
題意 給我們乙個可以採藥的時間t,接下來用m 種藥,第i種藥採摘需要用w i 的時間,有v i 的價值。我們需要在時間t內採摘到最大的價值。我通過這題學習了01揹包。無優化 pragma gcc optimize 3,ofast inline include include include incl...
洛谷 P1048 採藥 01揹包
辰辰是個天資聰穎的孩子,他的夢想是成為世界上最偉大的醫師。為此,他想拜附近最有威望的醫師為師。醫師為了判斷他的資質,給他出了乙個難題。醫師把他帶到乙個到處都是草藥的山洞裡對他說 孩子,這個山洞裡有一些不同的草藥,採每一株都需要一些時間,每一株也有它自身的價值。我會給你一段時間,在這段時間裡,你可以採...
洛谷P1048 採藥 01揹包
辰辰是個天資聰穎的孩子,他的夢想是成為世界上最偉大的醫師。為此,他想拜附近最有威望的醫師為師。醫師為了判斷他的資質,給他出了乙個難題。醫師把他帶到乙個到處都是草藥的山洞裡對他說 孩子,這個山洞裡有一些不同的草藥,採每一株都需要一些時間,每一株也有它自身的價值。我會給你一段時間,在這段時間裡,你可以採...