Pagini recente » Cod sursa (job #102015) | Cod sursa (job #496425) | Cod sursa (job #2112767) | Cod sursa (job #1438565) | Cod sursa (job #1717537)
#include <cstdio>
#include <algorithm>
#define MAX 12000000
#define MOD 104659
#define INF 6000000005
using namespace std;
char f[MAX];
int pos=0,N,MIN,S[10005]={},SOL=0;
struct arr
{
int val,w;
}v[1005];
void r(int &nr)
{
nr=0;
while(f[pos]<'0'||f[pos]>'9')
pos++;
while(f[pos]>='0'&&f[pos]<='9')
nr=nr*10+f[pos++]-'0';
}
int main()
{
freopen("energii.in","r",stdin);
freopen("energii.out","w",stdout);
fread(f,1,MAX,stdin);
r(N);r(MIN);
for(int i=1;i<=N;i++)
r(v[i].val),r(v[i].w);
for(int i=1;i<=N;i++)
for(int j=v[i].w;j<=10;j++)
S[j]=max(S[j],S[j-v[i].w]+v[i].val);
for(int i=10000;i>0;i--)
if(S[i]>=MIN)
SOL=i;
printf("%d",SOL);
return 0;
}