12 条题解
-
1
时间复杂度较高,但是简单易懂。
#include<iostream> using namespace std; const int maxl = 20; int n = 1,a[maxl]; bool isprime(int m) { if(m==1)return false; for(int i=2;i*i<=m;i++)if(m%i==0)return false; return true; } int main() { while(cin>>a[n]&&a[n]!=0)n++; for(int i=1;i<=n-1;i++) { bool flag = 1; for(int j=3;j<=a[i]/2;j++) { if(isprime(j)&&isprime(a[i]-j)) { cout<<a[i]<<" = "<<j<<" + "<<a[i]-j<<endl; flag = 0; break; } } if(flag)cout<<"Goldbach's conjecture is wrong\n"; } return 0; }
信息
- ID
- 197
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 577
- 已通过
- 218
- 上传者