Pagini recente » Cod sursa (job #651635) | Cod sursa (job #749714) | Monitorul de evaluare | Cod sursa (job #2350191) | Cod sursa (job #1052051)
#include<cstdio>
using namespace std;
struct andreea{
int e,c;
};
andreea v[5001];
int i,g,w,j,s,min;
int su[10001];
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
scanf("%d %d",&g,&w);
for(i=1;i<=g;i++)
scanf("%d %d",&v[i].e,&v[i].c);
for(i=1;i<=g;i++)
{
if(su[v[i].e]==0)
su[v[i].e]=v[i].c;
else
if(su[v[i].e]<v[i].c)
su[v[i].e]=v[i].c;
for(j=1;j<=10001;j++)
if(su[j]!=0)
{
s=v[i].e+j;
if(su[s]>v[i].c+su[j])
su[s]=v[i].c+su[j];
}
else
su[v[i].e+j]=v[i].c;
}
min=su[w];
/*if(su[w]!=0)
printf("%d\n",su[w]);*/
for(i=w+1;i<=10001;i++)
if(su[i]!=0&&min>su[i])
{
min=su[i];
//printf("%d\n",su[i]);
//break;
}
printf("%d\n",min);
return 0;
}