Pagini recente » Cod sursa (job #1101458) | Cod sursa (job #3148577) | Istoria paginii runda/lll | Cod sursa (job #2749406) | Cod sursa (job #2710810)
#include <bits/stdc++.h>
#define ll long long
//#define int ll
using namespace std;
ifstream in ("energii.in");
ofstream out ("energii.out");
int N, E;
vector <pair <int , int> > v;
int ans[23001];
main()
{
in >> N >> E;
for (int i = 1;i<=N;++i)
{
int a, b;
in >> a >> b;
v.push_back({a,b});
}
for (int i = 1;i<=23000;++i)
ans[i] = 1<<30;
for (auto i:v)
{
int eng = i.first;
int cost = i.second;
for (int j = 23000 - eng;j>=0;--j)
if (ans[j])
ans[j + eng] = min(ans[j + eng], ans[j] + cost);
ans[eng] = min(ans[eng], cost);
}
int anss = 1<<30;
for (int i = E; i<=15000;++i)
anss = min (anss, ans[i]);
out << anss << '\n';
return 0;
}