Pagini recente » Cod sursa (job #40020) | Cod sursa (job #1443307) | Cod sursa (job #2573992) | Cod sursa (job #1496502) | Cod sursa (job #2300893)
#include <fstream>
std::ifstream cin("rucsac.in");
std::ofstream cout("rucsac.out");
#define maxn 5005
#define maxw 10005
cin>>n>>weight;
int w[maxn],val[maxn];
int g[2][maxw];
int main()
{
cin>>n>>weight;
for(int i=0;i<n;++i)
cin>>w[i]>>va[i];
int l=0;
for(int i=1;i<=n;i++,l=1-l)
for(int cw=0;i<=weight;cw++){
g[l-1][cw]=g[l][cw]
if(w[i]<=cw)
g[l-1][cw]=std::max(g[l-1][cw],g[l][cw-w[i]]+val[i]);
}
cout<<g[l][weight];
}