Pagini recente » Cod sursa (job #2469272) | Cod sursa (job #1414887) | Cod sursa (job #2505460) | Cod sursa (job #2802160) | Cod sursa (job #559205)
Cod sursa(job #559205)
#include<stdio.h>
#define NRMAX 1001
#define INF 1000000001
typedef struct elem
{
long pos, cost;
};
elem Knp[NRMAX * 10], E[NRMAX];
long i, j, n, G, W;
int main()
{
freopen("energii.in", "rt", stdin);
freopen("energii.out", "wt", stdout);
scanf("%ld%ld", &G, &W);
for(i = 1; i <= G; i++)
scanf("%ld%ld", &E[i].pos, &E[i].cost);
for(i = 1; i <= W; i++)
Knp[i].cost = INF;
int x;
Knp[0].pos = 1;
Knp[0].cost = 0;
for(i = W; i >= 1; i--)
for(j = 1; j <= G; j++)
{
if(i - E[j].pos < 0)
x = 0;
else
x = i - E[j].pos;
if(Knp[i].cost > E[j].cost + Knp[x].cost)
{
Knp[i].pos = 1;
Knp[i].cost = E[j].cost + Knp[x].cost;
}
}
printf("%ld\n", Knp[W].cost);
return 0;
}