Pagini recente » Cod sursa (job #2809529) | Cod sursa (job #1350248) | Cod sursa (job #956834) | Cod sursa (job #599739) | Cod sursa (job #1880791)
#include <iostream>
#include<fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
#define inf 20000000
int n,w,i,j,pd[100000],e[5002],cost[5002],s,minn;
int main()
{
f>>n>>w;
for(i=1;i<=100000;++i) pd[i]=inf;
for(i=1;i<=n;++i)
{
f>>e[i]>>cost[i];
s+=e[i];
}
if(s<w)
g<<-1;
else
{ for(i=1;i<=n;++i)
{
for(j=100000;j>=1;j--)
pd[j+e[i]]=min(pd[j+e[i]], pd[j]+cost[i]);
pd[e[i]]=min(pd[e[i]],cost[i]);
}
minn=inf;
for(i=w;i<=100000;++i)
minn=min(minn,pd[i]);
g<<minn;
}
f.close();
g.close();
return 0;
}