…
include[HTML_REMOVED]
include[HTML_REMOVED]
include[HTML_REMOVED]
using namespace std;
int n,k;
const int N=20;
int arr[N],start,u,state[N],sum,res=0;
bool prime(int sum)
{
if(sum<2) return false;
for(int i=2;i<=sum/i;i)
if(sum%i==0)
return false;
return true;
}
void dfs(int u,int start)
{
if(u-1+n-start+1[HTML_REMOVED]k)
{
sum=0;
for(int i=1;i<=k;i)
sum+=state[i];
if(prime(sum))
res;
return;
}
for(int i=start;i<=n;i)
{
state[u]=arr[i];
dfs(u+1,i+1);
state[u]=0;
}
}
int main()
{
scanf(“%d%d”,&n,&k);
for(int i=1;i<=n;i++)
scanf(“%d”,&arr[i]);
dfs(1,1);
printf(“%d”,res);
return 0;
}
…
样例
blablabla
算法1
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla