Cod sursa(job #1275230)
| Utilizator | Data | 24 noiembrie 2014 21:30:41 | |
|---|---|---|---|
| Problema | Energii | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.48 kb |
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int g[1001],v[1001],c[100001],n,S,i,j,INF;
int main()
{
fin>>n>>S>>INF;
for(i=1;i<=S;i++) c[i]=INF;
for(i=1;i<=n;i++)
for(j=S;j>=1;j--)
{
if(j<g[i]) c[j]=min(v[i],c[j]); else c[j] = min(c[j-g[i]]+v[i],c[j]);
}
if(c[S]==INF) fout<<"-1"; else fout<<c[S];
}
void read()
{
fin>>n>>S;
for(i=1;i<=n;i++) fin>>g[i]>>v[i];
}
