1 条题解

  • 1
    @ 2022-10-25 20:51:24

    思路:判断素数函数+递归函数。

    我试了五次才过,5555555(呜呜呜呜呜呜)

    AC代码:

    #include<bits/stdc++.h>
    
    using namespace std;
    bool is_prime(int a){
        for(int i=2;i*i<=a;i++){
            if(a % i == 0){
                return false;
            } 	
        }return true;
    }
    int n,k;
    int a[25];
    long long ans;
    void dfs(int m,int sum,int x){
        if(m == k){
            if(is_prime(sum)){
                ans++;
            }
        return ;
        }
        for(int i=x;i<n;i++){   
            dfs(m+1,sum+a[i],i+1);
        }
        return ;
    }
    int main(){
    //freopen("select.in","r",stdin);
    //freopen("select.out","w",stdout);
        cin>>n>>k;
        for(int i=1;i<=n;i++{//错误代码😄! 正确代码自己想!!!
        cin>>a[i];
        }
        dfs(0,0,0);
        cout<<ans;
        return 0;//完美结束🎉️ 🎉️ 🎉️ 
        !!!
    }
    

    走过路过,不要错过,求点赞。

    • 1

    信息

    ID
    556
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    (无)
    递交数
    12
    已通过
    3
    上传者