#include#include using namespace std;const int Max = 100;int N,W;int w[Max],v[Max];int f[Max][Max];int CompletePack(){ memset(f,0,sizeof(f)); for(int i=1; i<=N; i++) { for(int j=0; j<=W; j++) { if(j >N>>W; for(int i=1; i<=N; i++) cin>>w[i]; for(int i=1; i<=N; i++) cin>>v[i]; cout< <
#include#include using namespace std;const int Max = 100;int N,W;int w[Max],v[Max];int f[Max][Max];int CompletePack(){ memset(f,0,sizeof(f)); for(int i=1; i<=N; i++) { for(int j=0; j<=W; j++) { for(int k=0;k*w[i]<=j;k++) { f[i][j]=max(f[i-1][j],f[i-1][j-k*w[i]]+k*v[i]); } } } return f[N][W];}int main(){ cin>>N>>W; for(int i=1; i<=N; i++) cin>>w[i]; for(int i=1; i<=N; i++) cin>>v[i]; cout< <
#include#include using namespace std;const int Max = 100;int N,W;int w[Max],v[Max];int f[Max];int CompletePack(){ memset(f,0,sizeof(f)); for(int i=1; i<=N; i++) { for(int j=w[i];j<=W;j++) f[j]=max(f[j],f[j-w[i]]+v[i]); } return f[W];}int main(){ cin>>N>>W; for(int i=1; i<=N; i++) cin>>w[i]; for(int i=1; i<=N; i++) cin>>v[i]; cout< <