Pagini recente » Cod sursa (job #28419) | Cod sursa (job #516414) | Cod sursa (job #2389207) | Cod sursa (job #1495763) | Cod sursa (job #2125004)
#include<bits/stdc++.h>
using namespace std;
int g,w,s,mmax=20000;
int e[1100],c[1100],d[1100][5100];
int main(){
ifstream cin("energii.in");
ofstream cout("energii.out");
cin>>g>>w;
for(int i=1;i<=g;i++){
cin>>e[i]>>c[i];
s+=e[i];
}
for(int i=1;i<=g;++i)
d[i][0]=mmax;
for(int j=1;j<=w;j++)
d[0][j]=mmax;
for(int i=1;i<=g;++i)
for(int j=0;j<=w;j++){
d[i][j]=d[i-1][j];
if(e[i]>=j)
d[i][j]=min(d[i-1][j],d[i-1][j-e[i]]+c[i]);
}
//for(int i=0;i<=g;++i){
//for(int j=0;j<=w;j++)
// cout<<d[i][j]<<" ";
// cout<<'\n';
}
if(s>=w) cout<<d[g][w]; else cout<<"-1";
return 0;
}