#include<string.h>
#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<vector>
#include<set>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=1299710;
bool u[maxn];
int ans[maxn];
void prepare()
{
int i,j,k;
for(i=2;i<maxn;i++)u[i]=1;
for(i=2;i<maxn;i++)
if(u[i])
for(j=2;j*i<maxn;j++)u[i*j]=0;
for(i=2;i<maxn;i++)
if(!u[i])
{
j=i;
while(j<maxn&&!u[j])j++;
j--;
for(k=i;k<=j;k++)ans[k]=j-i+2;
i=j;
}
else ans[i]=0;
}
int main()
{
int i,j,k;
prepare();
while(scanf("%d",&k)>0&&k)
{
printf("%d\n",ans[k]);
}
}
POJ 3518
最新推荐文章于 2018-06-23 14:15:09 发布