Pagini recente » Cod sursa (job #930473) | Cod sursa (job #2161919) | Cod sursa (job #8629) | Cod sursa (job #3222735) | Cod sursa (job #2859886)
#include <fstream>
#include <climits>
#define ll long long
using namespace std;
const int NMAX = 1003, VALMAX = 10003;
int e[NMAX], c[NMAX];
int dp[VALMAX];
signed main()
{
ifstream cin("energii.in");
ofstream cout("energii.out");
int n, w, i, mx = 0, j;
cin >> n >> w;
for (i = 1; i <= n; i++)
{
cin >> e[i] >> c[i];
mx = max(mx, e[i]);
}
for (i = 1; i <= mx; i++)
dp[i] = INT_MAX;
for (i = 1; i <= n; i++)
for (j = 0; j + e[i] <= mx; j++)
dp[e[i] + j] = min(dp[j] + c[i], dp[e[i] + j]);
int mn = INT_MAX;
for (i = w; i <= mx; i++)
mn = min(mn, dp[i]);
if (mn == INT_MAX)
mn = -1;
cout << mn;
}