Cod sursa(job #1284642)
| Utilizator | Data | 6 decembrie 2014 18:06:59 | |
|---|---|---|---|
| Problema | Energii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.68 kb |
# include <fstream>
# include <cstring>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int C[5005];
int n,G,i,j,E,cost;
int main ()
{
f>>n>>G;
for (i=1; i<=G; ++i) C[i]=100000;
for (i=1; i<=n; ++i)
{
f>>E>>cost;
for (j=G; j>=1; --j)
{
if (E>=j)
{if(C[j]<cost)
C[j]=C[j];
else
C[j]=cost;
}
else
{if(C[j]<C[j-E]+cost)
C[j]=C[j];
else
C[j]=C[j-E]+cost;
}}
}
if (C[G]==100000) g<<"-1\n";
else g<<C[G]<<"\n";
return 0;
}
