动态规划 ~~ 01背包~~
include <bits/stdc++.h>
using namespace std;
int v[105] ,w[1005],f[105][1005];//前i个数在体积不超过j时最优解
int main()
{
int n , x;
cin >> n >> x;
for (int i = 1; i <= x;i++)
{
cin >> v[i] >> w[i];
}
for (int i = 1; i <= x;i++)
{
for (int j = 0; j <= n;j++)
{
if (j >= v[i]) f[i][j] = max(f[i - 1][j] ,f[i - 1][j - v[i]] + w[i]);//3
else f[i][j] = f[i - 1][j];
}
}
cout << f[x][n] << "\n";//2
return 0;
}