给你一个n
求包括n的一个非素数区间有多长 +1输出
#include<stdio.h> #include<string.h> #include<algorithm> #include<vector> #include<math.h> using namespace std; #define MAXN 1302000 bool pri[MAXN]; int main() { memset(pri,0,sizeof(pri)); for(int i=2;i<=1141;i++) { if(!pri[i]) for(int j=i*i;j<=MAXN;j=j+i) pri[j]=1; } int n; while(scanf("%d",&n)!=EOF&&n) { int st=n,en=n; while(pri[st]==1) st--; while(pri[en]==1) en++; printf("%d\n",en-st); } return 0; }
时间: 2024-10-07 15:57:56