Pagini recente » Cod sursa (job #1772081) | Cod sursa (job #2104473) | Cod sursa (job #2799401)
#include <iostream>
#include <cstdio>
using namespace std;
int n, w, dp[5005];
struct generator{
int en, ct;
}a[1005];
void citire(){
cin >> n >> w;
for(int i = 1; i <= n; i++)
cin >> a[i].en >> a[i].ct;
for(int i = 0; i <= 5005; ++i)
dp[i] = 100000000;
}
int main()
{
freopen("energii.in", "r", stdin);
freopen("energii.out", "w", stdout);
citire();
for(int i = 1; i <= n; ++i)
for(int j = w; j; --j)
if(j <= a[i].en)
dp[j] = min(dp[j], a[i].ct);
else
dp[j] = min(dp[j], a[i].ct + dp[j - a[i].en]);
if(dp[w] >= 100000000)
cout << -1;
else
cout << dp[w];
return 0;
}