Pagini recente » Cod sursa (job #985830) | Cod sursa (job #2892675) | Cod sursa (job #865836) | Cod sursa (job #898919) | Cod sursa (job #1914259)
#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 (c[j]!=0||j==0)
{
if (j+e>=m)
{
Max=m;
Min=min(Min, c[j]+co);
}
else
{
if (Max<j+e) Max=j+e;
if (c[j+e]==0)
c[j+e]=c[j]+co;
else
c[j+e]=min(c[j+e], c[j]+co);
}
}
}
}
if(Min==INT_MAX)Min=-1;
if(m==0)Min=0;
fout<<Min;
return 0;
}