Cod sursa(job #1230159)
Utilizator | Ghinea Mihail Emanuel Eman98 | Data | 18 septembrie 2014 12:51:15 |
---|---|---|---|
Problema | Energii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include<fstream>
#define inf 10000005
using namespace std;
ifstream cin("energii.in");
ofstream cout("energii.out");
int i,g,n,v[5001],w,p,j;
int main(){
cin>>n>>g;
for(i=1;i<=g;i++)
v[i]=inf;
for(i=1;i<=n;i++){
cin>>w>>p;
for(j=g;j>=0;j--){
if(v[j]!=inf)
{
if(j+w>g){
if(v[g]>v[j]+p)
v[g]=v[j]+p;
}
else
if(v[j+w]>v[j]+p)
v[j+w]=v[j]+p;
}
}
}
if(v[g]<inf)
cout<<v[g];
else
cout<<-1;
}