Pagini recente » Cod sursa (job #2196241) | Cod sursa (job #957698) | Cod sursa (job #2552023) | Cod sursa (job #1979862) | Cod sursa (job #2695285)
#include <bits/stdc++.h>
#define int long long
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct elem
{
int energie;
int cost;
};
int n, m;
elem v[1002];
int dp[10002];
/// dp[i] => costul minim atunci cand folosesc i cantitati de energie
int32_t main()
{
fin >> n >> m;
for(int i = 1; i <= n; i ++)
{
fin >> v[i].energie;
fin >> v[i].cost;
}
for(int i = 1; i <= 10000; i ++)
{
dp[i] = INT_MAX;
}
for(int i = 1; i <= n; i ++)
{
for(int j = 10000 - v[i].energie; j >= 0; j --)
{
dp[j + v[i].energie] = min(dp[j+ v[i].energie], dp[j] + v[i].cost);
}
}
int ans = INT_MAX;
for(int i = m; i <= 10000; i ++)
{
ans = min(ans, dp[i]);
}
fout << ans << '\n';
}