Cod sursa(job #1325188)
Utilizator | Data | 23 ianuarie 2015 14:55:50 | |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.74 kb |
#include<fstream>
using namespace std;
int a[5001],i,j,x,y,g,w,p;
int main()
{
ifstream fin("energii.in");
ofstream fout("energii.out");
fin>>g>>w;
for(i=1;i<=w;i++)
{
a[i]=20000000;
}
a[0]=0;
for(i=1;i<=g;i++)
{
fin>>x>>y;
for(j=w-1;j>=0;j--)
{
if(a[j]<20000000)
{
p=j+x;
if(p>w)
{
p=w;
}
if(a[j]+y<a[p])
{
a[p]=a[j]+y;
}
}
}
}
if(a[w]==20000000)
{
a[w]=-1;
}
fout<<a[w];
fin.close();
fout.close();
return 0;
}