Pagini recente » Cod sursa (job #2928924) | Cod sursa (job #1239229) | Cod sursa (job #2324667) | Cod sursa (job #3001284) | Cod sursa (job #1947320)
#include<bits/stdc++.h>
using namespace std;
struct cell{
int g,p;
};
cell a[10000];
int mp[2][10002],n,x,l,g,p,c,pn,lp,lc;
int main(){
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
cin>>n>>x;
for(l=1;l<=n;l++)
cin>>a[l].g>>a[l].p;
lp=0;
lc=1;
for (l=1;l<=n;l++){
for (c=1;c<=x;c++)
if(a[l].g<=c){
pn=a[l].p+mp[lp][c-a[l].g];
if(pn>mp[lp][c])
mp[lc][c]=pn;
else
mp[lc][c]=mp[lp][c];
}
else
mp[lc][c]=mp[lp][c];
lp=1-lp;
lc=1-lc;
}
cout<<mp[lp][x];
return 0;
}