Pagini recente » Cod sursa (job #1203090) | Cod sursa (job #2580046) | Cod sursa (job #694989) | Cod sursa (job #2001324) | Cod sursa (job #2799386)
#include <bits/stdc++.h>
#define inf 100000000
using namespace std;
ifstream fin("data.in");
ofstream fout("data.out");
int dp[5005],G,W;
struct generator
{
int energie=0,cost=0;
}a[1005];
void read()
{
fin>>G>>W;
for(int i=1;i<=G;i++)
fin>>a[i].energie>>a[i].cost;
}
void best()
{
for(int i=1;i<=5000;i++)
dp[i]=inf;
for(int i=1;i<=G;i++)
for(int j=W;j>=1;j--)
if(a[i].energie>=j)
dp[j]=min(dp[j],a[i].cost);
else
dp[j]=min(dp[j],a[i].cost+dp[j-a[i].energie]);
if(dp[W]==inf)
fout<<-1;
else
fout<<dp[W];
}
int main()
{
read();
best();
return 0;
}