Pagini recente » Cod sursa (job #1158522) | Cod sursa (job #3279169) | Cod sursa (job #2977300) | Cod sursa (job #687134) | Cod sursa (job #1865202)
#include <bits/stdc++.h>
using namespace std;
int n, W, ans=numeric_limits<int>::max();
int e[2000], c[2000];
int dp[200000];
int main() {
ifstream cin("energii.in");
ofstream cout("energii.out");
cin >> n >> W;
for (int i = 0; i < n; i++) {
cin >> e[i] >> c[i];
}
for (int i = 0; i < 100000; i++) dp[i] = numeric_limits<int>::max();
dp[0] = 0;
for (int i = 1; i < 100000; i++) {
for (int j = 0; j < n; j++) {
if (i - e[j] < 0) continue;
else dp[i] = min(dp[i-e[j]]+c[j],dp[i]);
}
if (dp[i] == numeric_limits<int>::max()) dp[i] = 0;
if (i >= W) ans = min(ans,dp[i]);
}
cout << ans;
}