Pagini recente » Cod sursa (job #136388) | Cod sursa (job #728189) | Cod sursa (job #2644505) | Cod sursa (job #670607) | Cod sursa (job #1914234)
#include <fstream>
#include <vector>
#include <climits>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int n,m,i,Min,Max,j,prez[100001],c[100001],e,co;
int main()
{
fin>>n>>m;
Min=INT_MAX;
Max=0;
for(i=1;i<=n;i++)
{
fin>>e>>co;
for(j=Max;j>=0;j--)
{
if(prez[j]||j==0)
{
if(prez[j+e]==0)
prez[j+e]=1;
if(j+e<m)Max=max(Max,j+e);
c[j+e]=min(c[j+e],c[j]+co);
if(!c[j+e])c[j+e]=c[j]+co;
if(j+e>=m)Min=min(Min,c[j+e]);
}
}
}
if(Min==INT_MAX)Min=-1;
if(m==0)Min=0;
fout<<Min;
return 0;
}