Pagini recente » Cod sursa (job #2984240) | Cod sursa (job #3169720) | Cod sursa (job #2475922) | Cod sursa (job #2437806) | Cod sursa (job #2239138)
#include <fstream>
#define maxn 5001
#define maxg 10001
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int w[maxn], p[maxn], sol;
int optim[maxg], n, G;
int main()
{
int i, j;
int n, G;
f>>n>>G;
for(i = 1; i <= n; i++)
f>>w[i]>>p[i];
optim[0]=0;
sol = 0;
for(i = 1; i <= n; ++i)
for(j = G-w[i]; j>=0; --j)
{
if(optim[j+w[i]]<optim[j]+p[i])
{
optim[j+w[i]]=optim[j]+p[i];
if(optim[j+w[i]]>sol)
sol=optim[j+w[i]];
}
}
g<<sol;
return 0;
}