Pagini recente » Cod sursa (job #2316624) | ONIS 2014, Clasament | Cod sursa (job #1545546) | Cod sursa (job #286724) | Cod sursa (job #1746427)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n,w,i,c[5001],val,Min=100000001;
struct data{
int e,c;
}x[1001];
int main(){
fin>>n>>w;
for (i=1;i<=n;i++)
fin>>x[i].e>>x[i].c;
fin.close();
for (i=1;i<=w;i++)
c[i]=Min;
for (i=1;i<=n;i++){
val=w;
while(val>=0){
if (val>=x[i].e){
if (c[val]>c[val-x[i].e]+x[i].c) c[val]=c[val-x[i].e]+x[i].c;
}
else
if (c[val]>x[i].c) c[val]=x[i].c;
val--;
}
}
if (c[w]==100000001) fout<<"-1";
else
fout<<c[w];
fout.close();
return 0;
}