#include<stdio.h>
#include<math.h>
int main()
{
int l,b,k,N,X,i,m,j,a,M,C,h,g;
scanf("%d",&N);
while(N--)
{
j=0;m=0;
scanf("%d",&X);
M=X;C=X;
for(X;X>=2;X--)
{
l=(int)sqrt(X);
for(i=2;i<=l;i++)
if(X%i==0) break;
if(i>l) {a=X;h=fabs(a-C);break;}
}
for(M;M<=90000000;M++)
{
k=(int)sqrt(M);
for(i=2;i<=k;i++)
if(M%i==0) break;
if(i>k) {b=M;g=b-C;break;}
}
if(C==1) printf("2 1\n");
else if(g-h<0&&C!=1) printf("%d %d\n",b,g);
else if(g-h>=0) printf("%d %d\n",a,h);
}
return 0;
#include<math.h>
int main()
{
int l,b,k,N,X,i,m,j,a,M,C,h,g;
scanf("%d",&N);
while(N--)
{
j=0;m=0;
scanf("%d",&X);
M=X;C=X;
for(X;X>=2;X--)
{
l=(int)sqrt(X);
for(i=2;i<=l;i++)
if(X%i==0) break;
if(i>l) {a=X;h=fabs(a-C);break;}
}
for(M;M<=90000000;M++)
{
k=(int)sqrt(M);
for(i=2;i<=k;i++)
if(M%i==0) break;
if(i>k) {b=M;g=b-C;break;}
}
if(C==1) printf("2 1\n");
else if(g-h<0&&C!=1) printf("%d %d\n",b,g);
else if(g-h>=0) printf("%d %d\n",a,h);
}
return 0;
}
素数问题解决了相应的一系列素数问题就可以想出来。