Cod sursa(job #1127523)
Utilizator | Data | 27 februarie 2014 12:46:03 | |
---|---|---|---|
Problema | Energii | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <fstream>
#define M 5010
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int en,cs,E,m,e,sol,cost[M],oo=1000000000;
int main()
{
f>>m>>E;
for(e=1;e<E;e++)
cost[e]=oo;
sol=oo;
for(;m;m--)
{
f>>en>>cs;
for(e=E-1;e+en>=E&&e>=0;e--)
sol=min(sol,cost[e]+cs);
for(;e>=0;e--)
cost[e+en]=min(cost[e+en],cost[e]+cs);
}
g<<sol;
return 0;
}