//使用滚动数组 #include<cstdio> #include<algorithm> #include<iostream> using namespace std; int dp[1001]; int main(void){ int T,m; cin>>T>>m; for(int i=1;i<=m;i++){ int w,c; cin>>w>>c; for(int v=T;v>=w;v--) dp[v]=max(dp[v],dp[v-w]+c); } cout<<dp[T]<<endl; return 0; }
解题思路:
注意事项:
参考代码:
0.0分
0 人评分
C二级辅导-进制转换 (C语言代码)浏览:819 |
Tom数 (C语言代码)浏览:784 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:590 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:981 |
简单的a+b (C语言代码)浏览:583 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:443 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:725 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:634 |
Hello, world! (C++代码)浏览:1779 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:593 |