Pagini recente » Cod sursa (job #3194192) | Cod sursa (job #1018200) | Cod sursa (job #2559675) | Cod sursa (job #1022401) | Cod sursa (job #2354296)
#include <bits/stdc++.h>
using namespace std;
ifstream in("rucsac.in");
ofstream out("rucsac.out");
const int maxn=5e3+1;
const int maxg=1e4+1;
int N,G,i,j,solutie=0;
int a[maxn],b[maxn];
int varianta_optima[maxg];
int main()
{
in>>N>>G;
for (i=1;i<=N;++i)
{
in>>a[i]>>b[i];
}
varianta_optima[0]=0;
for(i=1;i<=N;++i)
for(j=G-a[i];j>=0;--j)
{
if(varianta_optima[j+a[i]]<varianta_optima[j]+b[i])
{
varianta_optima[j+a[i]]=varianta_optima[j]+b[i];
if(varianta_optima[j+a[i]]>solutie)
solutie=varianta_optima[j+a[i]];
}
}
out<<solutie;
return 0;
}