<<样例一堆5>>

P1579 哥德巴赫猜想(升级版)

Rtaaa @ 2023-03-22 19:32:59

大佬们怎么做啊?

#include<bits/stdc++.h>
using namespace std;
int numberone(int n){
    n-=4;
    for(int i=2;i<n;i++){
        if(n%i==0){
            return 0;
        }
    }
    return 1;
}
int numbertwo(int n){
    for(int i=3;i<n;i+=2){
        for(int j=2;j<i;j++){
            if(i%j==0) continue;
        }
        n-=i;
        cout<<i<<" ";
        i=3;
        if(n==0){
            return 0;
        }
    }
}
int main(){
    int n;
    cin>>n;
    if(numberone(n)==1){
        cout<<2<<" "<<2<<" "<<n-4;
        return 0;
    }
    else{
        numbertwo(n);
    }
}
我真服了,有没有大佬指点一下

by 北文 @ 2023-03-22 19:59:16

@wzc666 不懂你这个是什么个算法啊,这道题的正解不就是枚举前两个质数,然后判断第三个数也是不是质数吗


by Rtaaa @ 2023-03-22 20:56:41

@北文 谢谢大佬指导


|