Pagini recente » Cod sursa (job #3130738) | Cod sursa (job #22833) | Cod sursa (job #1603880) | Statistici Tomus Madalina (nimenicamine) | Cod sursa (job #1719787)
#include <algorithm>
#include <climits>
#include <cstdio>
using namespace std;
FILE *f, *g;
bool cmp(float a, float b)
{
if(a > b)
return true;
return false;
}
int n, i, c[5002], gr[5002], gMax;
int cMax[10001];
int maxCost = 0, s;
int j,k ;
int main()
{
f = fopen("rucsac.in", "r");
fscanf(f, "%d%d", &n, &gMax);
for(i = 1; i <= n ;i ++)
fscanf(f, "%d%d", & gr[i], & c[i]);
fclose(f);
cMax[0] = 0;
for(i = 1; i <= n; i ++)
for(j = gMax - gr[i]; j >= 0; j --)
{
if(cMax[j + gr[i]] < cMax[j] + c[i])
{
cMax[j + gr[i]] = cMax[j] + c[i];
if(cMax[j + gr[i]] > maxCost)
maxCost = cMax[j + gr[i]];
}
}
g = fopen("rucsac.out", "w");
fprintf(g, "%d", maxCost);
fclose(g);
return 0;
}