#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1010;
int n, m;
int f[N];
int v[N], w[N];
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>v[i]>>W[i];
for(int i=1;i<=n;i++)
for(int j=m;j>=v[i];j--)
f[j] = max(f[j], f[j - v[i]] + w[i]);
cout << res << endl;
return 0;
}
完全背包代码:
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1010;
int n, m;
int f[N];
int v[N], w[N];
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>v[i]>>W[i];
for(int i=1;i<=n;i++)
for(int j=0;j<=m;j++)
f[j] = max(f[j], f[j - v[i]] + w[i]);
cout << res << endl;
retu