Pagini recente » Cod sursa (job #488579) | Cod sursa (job #1425055) | Cod sursa (job #1390097) | Cod sursa (job #1706573) | Cod sursa (job #849206)
Cod sursa(job #849206)
#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];
while(cost[W]==Maxi)W++;
if(W>s)g<<-1<<'\n';
else g<<cost[W]<<'\n';
return 0;
}