Pagini recente » Cod sursa (job #2373879) | Cod sursa (job #522496) | Cod sursa (job #1904559) | Cod sursa (job #2446502) | Cod sursa (job #2434294)
#include <fstream>
#define MAX 10005
using namespace std;
ifstream fin("rucsac.in");
ofstream fout("rucsac.out");
long long n,g,W[MAX];
int main(){
long long i,j,x,y,maxx;
fin>>n>>g;
for(i=0;i<n;++i){
fin>>x>>y;//x-greutate, y-cost
for(j=g;j>0;--j)
if(W[j] && j+x<=g)
W[j+x]=max(W[j+x],W[j]+y);
if(x>g)
continue;
W[x]=max(W[x],W[0]+y);
}
maxx=0;
for(i=0;i<=g;++i){
maxx=max(maxx,W[i]);
}
fout<<maxx;
return 0;
}