Pagini recente » Cod sursa (job #1729007) | Cod sursa (job #157755) | Cod sursa (job #1952071) | Cod sursa (job #1094537) | Cod sursa (job #2471409)
#include <bits/stdc++.h>
using namespace std;
ifstream f("energii.in"); ofstream g("energii.out");
#define FOR(a,b,c) for(int a=b; a<=c; ++a)
const int NMAX = 1000001;
int G,W,enrg,cost,pd[10001];
int main()
{ f>>G>>W;
FOR(i,1,W) pd[i]=NMAX;
FOR(i,1,G)
{ f>>enrg>>cost;
for(int j=W;j;--j)
{ if(pd[j]!=NMAX && enrg+j<=W)
pd[enrg+j]=min(pd[enrg+j],pd[j]+cost);
if(enrg+j>W) pd[W]=min(pd[W],pd[j]+cost);
}
}
if(pd[W]==NMAX) g<<-1;
else g<<pd[W];
g.close(); return 0;
}