WA 0求调
查看原帖
WA 0求调
1279263
hzc0829楼主2024/8/17 11:21
#include<bits/stdc++.h>
using namespace std;
int n,k;
int a[25];
int ans;
bool vis[25];
bool pri(int x){
	if(x<2)return 0;
	for(int i=2;i*i<=x;i++)if(!x%i)return 0;
	return 1;
}
void dfs(int now,int step,int sum){
	if(step==k&&pri(sum)){
		ans++;
		return;
	}
	if(step==k)return;
	for(int i=now+1;i<n;i++){
		if(!vis[i]){
			vis[i]=1;
			dfs(i,step+1,sum+a[i]);
		}
        dfs(i,step,sum);
	}
    return;
}
int main(){
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	dfs(-1,0,0);
	cout<<ans;
	return 0;
}

WA,0 pts求调

2024/8/17 11:21
加载中...