#include<bits/stdc++.h>
using namespace std;
int maxans=0;
void cy(int a[],int n,int ans,bool b[],int c[],int time)
{
bool po=0;
for(int i=0;i<n;i++)
{
if(a[i]<=time && b[i]==1) b[i]=0,cy(a,n,ans+c[i],b,c,time-a[i]),po=1;
b[i]=1;
}
if(!po)
{
if(maxans<ans) maxans=ans;
}
}
int main()
{
int n,time;
cin>>n>>time;
int a[n],c[n];bool b[n];
for(int i=0;i<n;i++) cin>>a[i]>>c[i],b[i]=1;
cy(a,n,0,b,c,time);
cout<<maxans;
}
P1048 [NOIP2005 普及组] 采药
为什么全MLE了