Pagini recente » Cod sursa (job #2497099) | Cod sursa (job #2630181) | Cod sursa (job #3268260) | Cod sursa (job #715922) | Cod sursa (job #3169731)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
const int NMAX = 5005, SMAX = 10000;
int dp[SMAX + 5], n, c[NMAX], e[NMAX], s;
int main() {
fin >> n >> s;
for (int i = 1; i <= n; i++) {
fin >> e[i] >> c[i];
}
for (int i = 1; i <= SMAX; i++)
dp[i] = 1e9;
for (int i = 1; i <= n; i++) {
for (int sum = SMAX - e[i]; sum >= 0; sum--) {
dp[sum + e[i]] = min(dp[sum + e[i]], dp[sum] + c[i]);
}
}
int res = 1e9;
for (int i = s; i <= SMAX; i++) {
res = min(res, dp[s]);
}
fout << res;
return 0;
}