Pagini recente » Cod sursa (job #535415) | Cod sursa (job #1742093) | Cod sursa (job #1927809) | Cod sursa (job #2244370) | Cod sursa (job #1514025)
#include <bits/stdc++.h>
using namespace std;
const int INF=1000000;
const int NMAX=1002;
int n,k,cost[NMAX],enr[NMAX],l[NMAX],ll[NMAX];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d %d\n",&n,&k);
for (int i=1 ; i <= n; ++i)
scanf("%d %d\n",&enr[i],&cost[i]);
for(int i=1; i<=k; ++i)
l[i]=INF;
for (int i=1 ; i<=n; ++i)
{
for (int j=1 ; j<=k ; ++j)
{
if(enr[i]>=j) ll[j]=min(l[j], cost[i]);
else ll[j]=min(l[j], l[j-enr[i]] + cost[i]);
}
for(int kk=1; kk<=k; kk++)
l[kk]=ll[kk];
}
if (ll[k]==INF)printf("-1\n");
else printf("%d\n",ll[k]);
return 0;
}