Pagini recente » Cod sursa (job #682225) | hoata2 | Istoria paginii runda/verif1/clasament | Metoda Greedy si problema fractionara a rucsacului | Cod sursa (job #2254476)
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int v[10002];
const int inf=0x3f3f3f3f;
int n,G,cost,cant;
int main()
{
fin>>n>>G;
for(int i=1;i<=10001;i++)
v[i]=inf;
v[0]=0;
for(int i=1;i<=n;i++)
{
fin>>cant>>cost;
for(int j = G-cant; j >= 0; --j)
if(v[j+cant]>v[j]+cost && v[j]!=inf)
v[j+cant]=v[j]+cost;
}
int mi=inf + 1;
for(int i=10001;i>=G;i--)
if(mi>v[i])
mi=v[i];
if(mi==inf)
fout<<"-1";
else
fout<<mi;
return 0;
}