Pagini recente » Cod sursa (job #175110) | Cod sursa (job #1738538) | Cod sursa (job #2353823) | Cod sursa (job #614383) | Cod sursa (job #2042807)
#include <fstream>
#define inf 100002
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int n,k,e[1001],c[1001],cost[10001];
int main()
{
int i,j;
in >> n >> k;
for(i=1;i<=n;i++)
in >> e[i] >> c[i];
for(i=1;i<=k;i++)
cost[i]=inf;
for(i=1;i<=n;i++)
{
for(j=k;j-e[i]>=0;j--)
if(cost[j-e[i]]+c[i]<cost[j])
cost[j]=cost[j-e[i]]+c[i];
for(j=1;j<e[i];j++)
if(c[i]<cost[j])
cost[j]=c[i];
}
if(cost[k]==inf)
out << -1;
else
out<<cost[k];
in.close();
out.close();
return 0;
}