Pagini recente » Cod sursa (job #1777224) | Cod sursa (job #1020670) | Cod sursa (job #1510432) | Cod sursa (job #1377294) | Cod sursa (job #752284)
Cod sursa(job #752284)
#include<cstdio>
using namespace std;
int s2,n,s1,e,c,mini,i,j,s[5902];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d",&n);
scanf("%d",&s1);
mini=999999999;
for(i=1;i<=n;i++)
{
scanf("%d",&e);
scanf("%d",&c);
s2=s2+e;
for(j=s1;j>=1;j--)
if(s[j]!=0)
{
if(j+e<=s1&&s[j+e]==0||s[j+e]>s[j]+c) s[j+e]=s[j]+c;
if(j+e>s1&&s[j]+c<mini) mini=s[j]+c;
}
if(e>s1&&c<mini) mini=c;
if(s[e]==0||s[e]>c) s[e]=c;
}
if(s[s1]>0&&s[s1]<mini) mini=s[s1];
if(mini!=999999999&&s2>=s1) printf("%d\n",mini);
else printf("-1\n");
return 0;
}