测试点2一直TLE为啥啊
查看原帖
测试点2一直TLE为啥啊
1371232
wxehhh楼主2024/6/21 14:42
#include "iostream"
using namespace std;
bool f1(int n){

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

        }
    }
    return true;
}
int f3(int n){
    int t = n;
    int sum = 0;
    for (int i = 2; i <n ; ++i){
        for (int j = 2; j <n ; ++j) {
            if(f2(i)&&f2(j)&&(i+j==t)){
                printf("%d=%d+%d\n",n,i,j);
                return 0 ;
            }
        }
    }
}
int main(){

    int n ;
    cin >> n ;
    for (int i = 4; i <=n ; ++i) {
        if(f1(i)){
            f3(i);
        }
    }

}
2024/6/21 14:42
加载中...