Pagini recente » Cod sursa (job #2334680) | Cod sursa (job #3174014) | Cod sursa (job #632504) | Cod sursa (job #1314772) | Cod sursa (job #2241731)
#include <iostream>
using namespace std;
int main()
{
int n, W, i, j;
cin>>n>>W;
int v[n+1], w[n+1], **m;
m=new int *[n+1];
for(i=0;i<=n;i++)
m[i]=new int [W+1];
for(i=1;i<=n;i++)
cin>>w[i]>>v[i];
for(j=0;j<=W;j++)
m[0][j]=0;
for(i=1;i<=n;i++)
for(j=1;j<=W;j++)
if(w[i]>j)
m[i][j]=m[i-1][j];
else
m[i][j]=max(m[i-1][j], m[i-1][j-w[i]]+v[i]);
cout<<m[n][W];
for(i=0;i<=n;i++)
delete[] m[i];
delete[] m;
return 0;
}