Pagini recente » Cod sursa (job #3192293) | Cod sursa (job #1590935) | Cod sursa (job #434907) | Cod sursa (job #2499190) | Cod sursa (job #3203735)
#include <bits/stdc++.h>
using namespace std;
int k,m;
long long v[50001];
ifstream in("rucsac.in");
ofstream out("rucsac.out");
//#define in cin
//#define out cout
void rucs(int g, int p)
{
for (int i=k;i>=0;i--)
{
if (v[i]!=-1)
{
if (v[i+g]>v[i]+p || v[i+g]==-1)
v[i+g]=p+v[i];
}
}
}
void cit()
{
int n;
int x,y;
in>>n>>k;
for (int i=1;i<=k;i++)
v[i]=-1;
for (int i=0;i<n;i++)
{
in>>x>>y;
rucs(x,y);
}
}
int checky()
{
for (int i=k;i<=5001;i++)
if (v[i]<m && v[i]>0)
m=v[i];
return m;
}
int main()
{
cit();
m=v[k];
out<<checky();
return 0;
}