17分,小白,求调
查看原帖
17分,小白,求调
1409600
zengbinhuan楼主2024/10/18 16:31

小的代码奉上

#include <bits/stdc++.h>
using namespace std;
bool prime (int x){
    if (x == 1) return 0;
    for (int i = 2; i * i <= x; i ++)
    if (x % i == 0)
    return 0;
    return 1;
}
int n, k, a[30];
long long ans;
void dfs (int m, int num, int x){
    if (m == k){
        if (prime(num) != 0) ans ++;
        return ;
    }
    for (int i = x; i < n; i ++){
        dfs (m + 1, num + a[i], i + 1);
    }
}
signed main() {
    cin >> n >> k;
    for (int i = 1; i <= n; i ++){
        cin >> a[i];
    }
    dfs (0, 0, 0);
    cout << ans;
    return 0;
}
2024/10/18 16:31
加载中...