16fen
查看原帖
16fen
1057034
Dark_into_Lie楼主2023/8/6 10:01
#include<bits/stdc++.h>
using namespace std;

int n,k,x[25],ans,sum;

bool Prime(int n){
    if(n == 1) return 0;
    for(int i = 2;i * i <= n;i++){
        if(n % i == 0) return 0;
    }
    return 1;
}

void dfs(int step){
    if(step == k + 1){
        if(Prime(sum)) ans++;
        sum = 0;
        return;
    }
    for(int i = 1;i <= n;i++){
        sum += x[i];
        dfs(step + 1);
    }
    return;
}

int main(){
    cin >> n >> k;
    for(int i = 1;i <= n;i++){
        cin >> x[i];
    }
    dfs(1);
    cout << ans << endl;
    return 0;
}
2023/8/6 10:01
加载中...