codevs 1115

来源:互联网 发布:手机淘宝电脑版登录 编辑:程序博客网 时间:2024/06/05 13:23
//f[j]=max(f[j],f[j-v[i]]+v[i]*p[i]){1<=i<=m;n>=j>=v[i]}
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,m,v[25],p[25];
int f[30000];
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++)
{
scanf("%d%d",&v[i],&p[i]);
}
for(int i=1;i<=m;i++)
   for(int j=n;j>=v[i];j--)
       f[j]=max(f[j],f[j-v[i]]+v[i]*p[i]);
printf("%d\n",f[n]);
    return 0;
1 0