为什么第三个点wa
#include <iostream>
using namespace std;
int n;
long long c,fama[35],qianzhuihe[35],ans;
void dfs(long long thisans,int cur)
{
if(thisans+qianzhuihe[cur]<=ans)return;
ans=max(ans,thisans);
if(cur==0)return;
if(thisans+fama[cur]<=c)dfs(thisans+fama[cur],cur-1);
dfs(thisans,cur-1);
}
int main()
{
cin>>n;
cin>>c;
for(int i=1;i<=n;i++)
{
cin>>fama[i];
qianzhuihe[i]=fama[i]+qianzhuihe[i-1];
}
dfs(0,n);
cout<<ans;
}