#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 人评分