tip
inline
code
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int max(int a, int b) {
if (a > b) {
return a;
} else {
return b;
}
}
inline void read() {
int i, a[1005], b[1005], t, m, f[1005] = {0};
cin >> t >> m; //total time and num of things
for (i = 1; i <= m; i++) {
cin >> a[i] >> b[i]; //ever time cost and value
}
int j;
for (i = 1; i <= m; i++) {
for (j = t; j >= a[i]; j--) {
f[j] = max(f[j], f[j - a[i]] + b[i]);
}
}
cout << f[t] << endl;
}
int main() {
read();
return 0;
}