记录编号 165949 评测结果 AAAAA
题目名称 [NOIP 2002]选数 最终得分 100
用户昵称 Gravatar<蒟蒻>我要喝豆奶 是否通过 通过
代码语言 C++ 运行时间 0.004 s
提交时间 2015-06-13 15:29:02 内存使用 0.32 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstdlib>
using namespace std;
inline int in()
{
	char c=getchar();
	int x=0;
	while(c<'0'||c>'9')c=getchar();
	for(;c>='0'&&c<='9';c=getchar())x=x*10+c-'0';
	return x;
}
bool P(int l)
{
	if(l==0||l==1)
	    return 0;
	if(l>=2)
	{
	  int c=2;
	  while(c<=floor(sqrt(l))&&(l%c!=0))
		 c=c+1;
	  if(c>floor(sqrt(l)))
		 return 1;
	  else
	    return 0;
	}
}
bool vis[102];
int n,k;
int ans;
int a[2015];
void work(int o,int k,int sum)
{
	vis[o]=1;
	if(k==0)
	{
		vis[o]=0;
	//	cout<<sum<<" ";
		if(P(sum)==1)
			ans++;
		return ;
	}
	for(int i=o+1;i<=n;i++)
		if(vis[i]==0)
			work(i,k-1,sum+a[i]);
	vis[o]=0;
	return ;
}
int main()
{
	freopen("choose.in","r",stdin);
	freopen("choose.out","w",stdout);
	n=in();
	k=in();
	for(int i=1;i<=n;i++)
		a[i]=in();
	work(0,k,0);
	printf("%d",ans);
	//system("pause");
	return 0;

}