Cod sursa(job #2399591)
| Utilizator | Data | 7 aprilie 2019 19:15:46 | |
|---|---|---|---|
| Problema | Energii | Scor | 95 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
long long cost[10001],costaux[10001];
int main()
{
int n,tot,i,j,a,b;
in>>n>>tot;
for(i=1;i<=10000;i++)
cost[i]=1e12;
for(i=1;i<=n;i++)
{
for(j=1;j<=10000;j++)
costaux[j]=cost[j];
in>>a>>b;
for(j=a;j<=10000;j++)
costaux[j]=min(costaux[j],cost[j-a]+b);
for(j=1;j<=10000;j++)
cost[j]=costaux[j];
}
for(i=9999;i>=tot;i--)
cost[i]=min(cost[i],cost[i+1]);
out<<cost[tot];
return 0;
}
