记录编号 256433 评测结果 AAAAAAAAAA
题目名称 [NOIP 2002]选数 最终得分 100
用户昵称 Gravatardateri 是否通过 通过
代码语言 C++ 运行时间 0.453 s
提交时间 2016-04-30 11:54:16 内存使用 0.75 MiB
显示代码纯文本
#include<stdio.h>
#include<math.h>
int a[100]={0},i,n,k,sum=0,ans=0;
bool prime(int x)
{
	int i;
	for(i=2;i<=sqrt(x+0.5);i++)
	  if(x%i==0)
	    return false;
	return true;
}
void dfs(int deep,int i)
{
	if(deep!=k)
	for(;i<=n-(k-deep-1);i++)
	{
		sum+=a[i];
		dfs(deep+1,i+1);
		sum-=a[i];
	}
	else if(prime(sum)==true)
	  ans++;
}
int cc()
{
	freopen("choose.in","r",stdin);
	freopen("choose.out","w",stdout);
    scanf("%d%d",&n,&k);
	for(i=1;i<=n;i++)
	  scanf("%d",&a[i]);
	dfs(0,1);
	printf("%d\n",ans);
	return 0;
}
int ccc=cc();
int main(){;
}