#include<bits/stdc++.h>
using namespace std;
long long n, m, w[10001], c[10001], dp[10000001];
int main() {
scanf("%d%d", &n, &m);
for (int i = 1; i <= m; i++) {
scanf("%d%d", &w[i], &c[i]);
}
for (int i = 1; i <= m; i++) {
for (int j = w[i]; j <= n; j++) {
dp[j] = max(dp[j], dp[j - w[i]] + c[i]);
}
}
printf("%d", dp[n]);
return 0;
}
它上面样例10输入是:
10000000 1
1 10000
输出是:
100000000000
结果我的输出是:
1215752192
哪位大佬知道哪错了啊!!!