```cpp
#include <bits/stdc++.h>
using namespace std;
struct ff
{
int t , v;
} a[1005];
int ans;
int dp[10005];
signed main ()
{
int n , tim;
scanf ("%d%d" , &tim , &n);
for (register int i = 1; i <= n; i++) scanf ("%d%d" , &a[i].t , &a[i].v);
for (register int i = 1; i <= tim; i++)
{
for (register int j = tim; j >= a[i].t; j--)
{
dp[j] = max (dp[j] , dp[j - a[i].t] + a[i].v);
}
}
cout << dp[tim];
return 0;
}
```
by jyqjyq @ 2023-07-05 12:57:51
有必要吗。。
by Sprague_Garundy @ 2023-07-05 13:05:02