Pagini recente » Cod sursa (job #1615447) | Cod sursa (job #1244247) | Cod sursa (job #2450194) | Cod sursa (job #964222) | Cod sursa (job #3352861)
#include <bits/stdc++.h>
#define INF 0x3f3f3f3f
using namespace std;
int main() {
ifstream cin("energii.in");
ofstream cout("energii.out");
int g, w;
cin >> g >> w;
vector<int> e(g), c(g);
for (int i = 0; i < g; i++) {
cin >> e[i] >> c[i];
}
vector<int> dp(w + 1, INF);
dp[0] = 0;
for (int i = 0; i < g; i++) {
for (int j = w - e[i]; j < w; j++) {
dp[w] = min(dp[w], dp[j] + c[i]);
}
for (int j = w - 1; j >= e[i]; j--) {
dp[j] = min(dp[j], dp[j - e[i]] + c[i]);
}
}
cout << (dp[w] != INF ? dp[w] : -1) << "\n";
return 0;
}