标签:div use c++ space set size printf using bool
#include <bits/stdc++.h> using namespace std; int n,m,a[30],ans; bool use[30],t[2010]; void dfs(int now,int cnt){ if(now==m){ memset(t,0,sizeof(t)); int sum=0,tot=0; t[0]=1; for(int i=1;i<=n;i++)if(!use[i]){ for(int j=tot;j>=0;j--)if(t[j] && !t[j+a[i]])t[j+a[i]]=1,sum++; tot+=a[i]; } ans=max(ans,sum); return; } for(int i=cnt+1;i<=n;i++)if(!use[i]){ use[i]=1; dfs(now+1,i); use[i]=0; } } int main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++)scanf("%d",&a[i]); dfs(0,0); printf("%d\n",ans); return 0; }
标签:div use c++ space set size printf using bool
原文地址:https://www.cnblogs.com/codetogether/p/9780284.html