Pagini recente » Cod sursa (job #2745957) | Cod sursa (job #1709594) | Cod sursa (job #2483959) | Cod sursa (job #252943) | Cod sursa (job #2394782)
#include <fstream>
#define e first
#define c second
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int i,j,W,G,total,maxi,sol,sc,D[10000001];
pair<int,int> v[1001];
int main(){
fin>>G>>W;
for(i=1;i<=G;i++){
fin>>v[i].e>>v[i].c;
total+=v[i].e;
}
if(total<W){fout<<-1;return 0;}
for(i=1;i<=total;i++)D[i]=1000000000;
for(i=1;i<=G;i++)
for(j=W;j>=0;j--){
sc=j+v[i].e;
if(sc>=W)sc=W;
D[sc]=min(D[sc],D[j]+v[i].c);
}
fout<<D[W];
return 0;
}