Pagini recente » Cod sursa (job #2444162) | Cod sursa (job #744347) | Cod sursa (job #1756680) | Cod sursa (job #1021325) | Cod sursa (job #849217)
Cod sursa(job #849217)
#include <fstream>
using namespace std;
#define Maxi 100000000
ifstream f("energii.in");
ofstream g("energii.out");
int eg[1003],cg[1003],i,j,Gn,W,cost[100003],s;
int main()
{
f>>Gn>>W;
for (i=1; i<=Gn; i++){f>>eg[i]>>cg[i];s+=eg[i];}
for (i=1; i<=W+5003; i++) cost[i]=Maxi;
cost[0]=0;
for(i=1; i<=Gn; i++)
for (j=W+5000; j>=eg[i]; j--)
if(cost[j]>cost[j-eg[i]]+cg[i])cost[j]=cost[j-eg[i]]+cg[i];
int mini=Maxi-1;
for (i=W; i<=W+5000; i++)
if(cost[i]!=Maxi)
mini=min(cost[i],mini);
if(mini==Maxi-1)g<<-1<<'\n';
else g<<mini<<'\n';
return 0;
}