#include<bits/stdc++.h> using namespace std; typedef long long ll; ll n,m; ll dp[100000],v[100000],p[100000]; int main() { cin>>n>>m; for(int i=1;i<=m;i++) cin>>v[i]>>p[i]; for(int i=1;i<=m;i++) { for(int j=n;j>v[i];j--) if(j>=v[i]) dp[j]=max(dp[j],dp[j-v[i]]+v[i]*p[i]); } cout<<dp[n]; cout<<endl; return 0; }
解题思路:
注意事项:
参考代码:
0.0分
0 人评分
字符串对比 (C语言代码)浏览:1413 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:576 |
DNA (C语言描述,蓝桥杯)浏览:1555 |
1009题解浏览:750 |
回文数字 (C语言代码)浏览:2510 |
用筛法求之N内的素数。 (C语言代码)浏览:529 |
字符串比较 (C语言代码)浏览:685 |
C二级辅导-等差数列 (C语言代码)浏览:815 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:672 |
1052题解(链表操作)浏览:674 |