题意:
完全背包模板
#include <bits/stdc++.h>
using namespace std;
#define se second
#define fi first
#define ll long long
#define CLR(a,b) memset(a,(b),sizeof(a))
const int MAXN = (int)1e5+10;
int n, m;
int v[MAXN], w[MAXN];
int dp[MAXN];
int main() {
// ios::sync_with_stdio(false);
while(~scanf("%d",&n)) {
for(int i = 1; i <= n; ++i) {
scanf("%d%d",&v[i],&w[i]);
}
scanf("%d",&m);
CLR(dp, 0);
for(int i = 1; i <= n; ++i) {
for(int j = w[i]; j <= m; ++j) {
dp[j] = max(dp[j], dp[j-w[i]]+v[i]);
}
}
printf("%d\n",dp[m]);
}
return 0;
}