#include<iostream>
#include<cmath>
using namespace std;
bool justifyprime(int n)
{
if(n==1)
return false;
else if(n==2||n==3)
return true;
else if(n>=4)
{
for(int i=2;i<=sqrt(n);i++)
{
if(n%i==0)
{
return false;
}
}
return true;
}
}
int main()
{
int num;
cin>>num;
while(num--)
{
int N,left,right;
cin>>N;
left=right=N;
if(justifyprime(N)==true )
cout<<N<<" "<<0<<endl;
else
{
while(1)
{
left--;
if(justifyprime(left)==true)
break;
}
while(1)
{
right++;
if(justifyprime(right)==true)
break;
}
if((N-left)<=(right-N))
cout<<left<<" "<<N-left<<endl;
else
cout<<right<<" "<<right-N<<endl;
}
}
}
遍历一边而已,没啥可说。。
素数距离
最新推荐文章于 2022-03-07 13:33:33 发布