Pagini recente » Cod sursa (job #1391627) | Cod sursa (job #2725910) | Cod sursa (job #2724526) | Cod sursa (job #2724474) | Cod sursa (job #2444012)
#include <iostream>
#include <fstream>
#include <assert.h>
using namespace std;
#define ma1 5005
#define ma2 10010
ifstream fi("rucsac.in");
ofstream fo("rucsac.out");
int w[ma1],p[ma1];
int op[ma2];
int n,g;
int main()
{
int sol=0;
fi>>n>>g;
for(int i=1;i<=n;i++)
fi>>w[i]>>p[i];
for(int i=1;i<=n;i++)
for(int j=g-w[i];j>=0;j--)
if(op[j+w[i]]<op[j]+p[i])
{
op[j+w[i]]=op[j]+p[i];
if(op[j+w[i]]>sol)
sol=op[j+w[i]];
}
fo<<sol;
return 0;
}