NC16666 开心的金明
\(01\)背包裸题
const int N=10010,M=30010;
int f[M];
int a[N],b[N];
int n,m;
int main()
{
cin>>m>>n;
for(int i=1;i<=n;i++) cin>>a[i]>>b[i];
for(int i=1;i<=n;i++)
for(int j=m;j>=a[i];j--)
f[j]=max(f[j],f[j-a[i]]+a[i]*b[i]);
cout<<f[m]<<endl;
//system("pause");
}