题目链接:https://www.luogu.com.cn/problem/P1048
这是一个动态规划中的0/1背包问题。是一道模板题
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>using namespace std;const int N = 1000;int n, m;
int f[N];int main() {
cin >> m >> n;for (int i = 0; i < n; i ++ ) {
int v, w; cin >> v >> w;for (int j = m; j >= v; j -- ) f[j] = max(f[j], f[j - v] + w);}cout << f[m] << endl;return 0;
}