记录编号 476456 评测结果 AAWWW
题目名称 [NOIP 2002]选数 最终得分 40
用户昵称 GravatarMoon_ 是否通过 未通过
代码语言 C++ 运行时间 0.002 s
提交时间 2017-11-23 21:49:07 内存使用 0.31 MiB
显示代码纯文本
#include <iostream>  
#include <queue> 
#include <stack>   
#include <cstdio>  
using namespace std;   
int a[22],ans = 0;  
int n,k;  
bool ss(int x){  
        if(x == 1||x == 0) return 0;  
       for(int i = 2;i*i<=x;i++)  
            if(x%i == 0)return 0;  
        return 1;  
  }  
void dfs(int t,int sum,int j){  
        if(t==k+1){if(ss(sum))ans++;}  
      else  
           for(int i = j;i<=n;i++)  
              {
				
		   dfs(t+1,sum+a[i],i+1); 
			  } 
   }  
      
int main()  
    {  
   freopen("choose.in","r",stdin);
    freopen("choose.out","w",stdout);
     cin>>n>>k;  
       for(int i = 1;i <= n;i++)cin>>a[i];  
        dfs(0,0,1);  
        cout<<ans<<endl;  
        return 0;  
}