AC #1,#2,#8
代码如下
#include <bits/stdc++.h>
using namespace std;
int a[1010];
bool f[1010];
int n,c,hh;
void dfs(int k)
{
if(k>c)
{
return ;
}
hh=max(hh,k);
for(int i=1;i<=n;i++)
{
if(f[i]==0)
{
f[i]=1;
dfs(k+a[i]);
f[i]=0;
}
}
}
int main()
{
cin>>n>>c;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
dfs(0);
cout<<hh;
return 0;
}
请问剪枝应该怎么写
谢谢谢谢!