Pagini recente » Cod sursa (job #1643876) | Cod sursa (job #2428137) | Cod sursa (job #1784482) | Cod sursa (job #162326) | Cod sursa (job #3283312)
#include<fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
long long N , GMaxx , LinAnt[10001] , LinCrt[10001];
struct Obiect{
int G;
int V;
}O[1001];
int main()
{
cin>>N>>GMaxx;
for(int i=1 ; i<=N ; i++)
cin>>O[i].G>>O[i].V;
for(int i=1 ; i<=N ; i++){
for(int cw=1 ; cw<=GMaxx ; cw++){
if(cw >= O[i].G)
LinCrt[cw]=max(LinAnt[cw] , O[i].V + LinAnt[cw-O[i].G]);
else
LinCrt[cw]=LinAnt[cw];
}
for(int cw=1 ; cw<=GMaxx ; cw++)
LinAnt[cw]=LinCrt[cw];
}
cout<<LinCrt[GMaxx]<<'\n';
return 0;
}