nyoj24 素数距离

来源:互联网 发布:linux 线性区 物理地址 编辑:程序博客网 时间:2024/06/14 19:18
 #include <stdio.h>#include <math.h>int fun(int n);int left(int n);int right(int n);int main(){int m,n,a=0,x,y;scanf("%d",&m);while(m--){scanf("%d",&n);x=left(n);y=right(n);if(n==1)printf("%d %d\n",n+1,a+1);else if(fun(n)==1)printf("%d %d\n",n,a);else if(x<=y)printf("%d %d\n",n-x,x);elseprintf("%d %d\n",n+y,y);}return 0;}int fun(int n){int i;for(i=2;i<=sqrt(n);i++)if(n%i==0)break;if(i>sqrt(n)&&n!=1)return 1;elsereturn 0;}int left(int n)//左距离{int a=0;while(fun(n)!=1){n--;a++;}return a;}int right(int n)//右距离{int a=0;while(fun(n)!=1){n++;a++;}return a;}        //AC

0 0
原创粉丝点击