蒟蒻求助【悬关】
查看原帖
蒟蒻求助【悬关】
1060965
fanjiajun_U楼主2024/3/9 16:47
#include <bits/stdc++.h>
using namespace std;
int k,n;
int ans;
int a[1000];
bool Is_prime(int a){
	if(a<2) return false;
	for(int i=2;i*i<=a;i++){
		if(a%i==0) return false; 
	}
	return true;
}
void dfs(int qi,int cnt,int sum){
	if(cnt>=k){
		if(Is_prime(sum)) ans++;
		return;
	}
	for(int i=qi;i<=cnt;i++){
		dfs(i+1,sum+a[i],cnt);
	}
}
int main(){
	cin>>n>>k;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}	
	dfs(0,0,0);
	cout<<ans;
    return 0;
}
2024/3/9 16:47
加载中...