求助大神,80分两个TLE.

P1304 哥德巴赫猜想

``` #include<bits/stdc++.h> using namespace std; int n; int f=0; bool ss(int s){ if(s<2){ return false; } for(int i=2;i<=sqrt(s);i++){ if(s%i==0){ return false; } } return true; } int main(){ cin>>n; for(int i=4;i<=n;i+=2){ f=0; for(int j=2;j<=n;j++){ if(f==1){ break; } int k=i-j; if(ss(j)&&ss(k)){ cout<<i<<'='<<j<<'+'<<k<<endl; f=1; break; } } } return 0; } ```
by _zuoqingyuan @ 2023-11-26 13:44:34


直接把k求出来就行
by _zuoqingyuan @ 2023-11-26 13:45:12


$k$ 可以由 $i-j$ 得到,所以不用枚举 $k$
by CheZiHe929 @ 2023-11-26 13:45:18


谢谢大佬!
by Danny_chan @ 2023-11-26 16:08:49


@[zuoqingyuan](/user/731650) 谢谢
by Danny_chan @ 2023-11-26 21:14:57


|