Pagini recente » Cod sursa (job #3352896) | Borderou de evaluare (job #1545538) | Cod sursa (job #906822) | Statistici VasileOctavian (VasileOctavian) | Cod sursa (job #3352860)
#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] << "\n";
return 0;
}