游客 Signup | Login
中文 | En

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;
	}
}

Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题