#2#10TLE求助!

P1304 哥德巴赫猜想

@[okkkkkkkkk](/user/1035639) 我也是用函数但是类型是int ``` #include<bits/stdc++.h> using namespace std; int a(int j) { int flag=0; for(int i=2;i<=sqrt(j);i++) if(j%i==0) flag=1; return flag; } int main() { int n; cin>>n; cout<<4<<"="<<2<<"+"<<2<<endl; for(int i=6;i<=n;i+=2) { for(int j=3;j<=i;j+=2) { int flag=0; flag+=a(j); flag+=a(i-j); if(flag==0) { cout<<i<<"="<<j<<"+"<<i-j<<endl; break; } } } return 0; } ```
by x1489631649 @ 2023-07-21 09:24:48


@[okkkkkkkkk](/user/1035639) n=4单独写是因为4以后的数不会含有因数2然后直接两个两个加上去
by x1489631649 @ 2023-07-21 09:27:54


谢谢!
by sans_001 @ 2023-07-21 09:35:00


新代码终于过了 ```cpp #include <bits/stdc++.h> using namespace std; bool zhishu(int a) { for (int i = 2; i <= sqrt(a); i++) { if (a % i == 0) { return false; } } return true; } int main() { int n; cin >> n; cout << "4=2+2" << endl; for (int k = 6; k <= n; k += 2) { for (int i = 2; i <= k; i++) { if (zhishu(i) && zhishu(k - i)) { cout << k << "=" << i << "+" << k - i << endl; break; } } } return 0; } ```
by sans_001 @ 2023-07-21 09:35:53


|