Pagini recente » Cod sursa (job #3283304) | Cod sursa (job #2809441) | Cod sursa (job #3258301) | Cod sursa (job #699663) | Cod sursa (job #3188551)
#include <bits/stdc++.h>
using namespace std;
int gen, energyNeeded;
int enGen[1010], costGen[1010], dp[5010];
int main()
{
freopen("energii.in", "r", stdin);
freopen("energii.out", "w", stdout);
cin >> gen >> energyNeeded;
for(int i = 1; i <= gen; i++)
cin >> enGen[i] >> costGen[i];
for(int i = 0; i <= energyNeeded; i++)
dp[i] = 2e9;
for(int i = 1; i <= gen; i++)
for(int j = energyNeeded; j >= 0; j--)
{
if(j <= enGen[i])
dp[j] = min(dp[j], costGen[i]);
else
dp[j] = min(dp[j], dp[j - enGen[i]] + costGen[i]);
}
if(dp[energyNeeded] == 2e9)
cout << -1;
else
cout << dp[energyNeeded];
return 0;
}