Cod sursa(job #94375)
Utilizator | Ionita Alexandru the1dragon | Data | 22 octombrie 2007 21:20:23 |
---|---|---|---|
Problema | Energii | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<stdio.h>
int a[25600];
int main()
{
freopen("energii.in", "r", stdin);
freopen("energii.out", "w", stdout);
int n, e, putere, cost, i, j, sol=0x7fffffff;
scanf("%d %d", &n, &e);
for (i=1; i<25600; i++)
a[i]=0x3fffffff;
for (i=1; i<=n; i++)
{
scanf("%d %d", &putere, &cost);
for (j=e; j>=0; j--)
{
if (a[j]+cost<a[j+putere])
a[j+putere]=a[j]+cost;
if ((j+putere>=e) && (a[j+putere]<sol))
sol=a[j+putere];
}
}
printf("%d", sol);
return 0;
}