2882 - 找孪生素数对
两个差为2的素数称之为孪生素数。现在输入整数n,求n以内的所有孪生素数对。
Input
一行:一个整数n (3<n<10000)
Output
若干行,每一行为一对相差为2的素数
Examples
Input
10
Output
3 5 5 7
Solution C++
#include<iostream> #include<cmath> using namespace std; int b[1001]; int ss(int ); int main() { int n; cin>>n; for(int i=1;i<=n-2;++i) { if(ss(i)==0&&ss(i+2)==0) cout<<i<<" "<<i+2<<endl; } return 0; } int ss(int a) { if(a==1||a==0||a<0)return 1; else { int x=2; int c=floor(sqrt(a)); while(x<=c&&a%x!=0) ++x; if(x>c)return 0; else return 1; } }