Pagini recente » Cod sursa (job #1795686) | Cod sursa (job #689109) | Cod sursa (job #191810) | Cod sursa (job #2410339) | Cod sursa (job #2263542)
#include <fstream>
using namespace std;
int g, w, eg[1000], cg[1000], dp[10000];
int main(){
int i, j;
ifstream fin ("energii.in");
fin >> g >> w;
for (i=0; i<g; i++)
fin >> eg[i] >> cg[i];
fin.close();
for (i=0; i<=w; i++)
dp[i]=-1;
dp[0]=0;
int s=10000000;
for (i=0; i<g; i++)
for (j=w; j>=0; j--)
if (dp[j]!=-1){
if (eg[i]+j>=w)
s=min(s, dp[j]+cg[i]);
if (eg[i]+j<=w)
dp[j+eg[i]]=min(dp[j+eg[i]], dp[j]+cg[i]);
}
if (s==10000000)
s=-1;
ofstream fout ("energii.out");
fout << s;
fout.close();
return 0;
}