Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- #define fastread()(ios_base::sync_with_stdio(false),cin.tie(NULL));
- typedef long long ll;
- #define N 12997800
- #define m 3606
- vector<int>prime;
- vector<bool>isprime(N,true);
- void primefactor()
- {
- int pos=1,i,j;
- for(i=4;i<=N;i+=2)isprime[i]=false;
- prime.push_back(2);
- for(i=3;i<=m;i+=2)
- {
- if(isprime[i])
- {
- for(j=i*i;j<N;j+=i)
- {
- isprime[j]=0;
- }
- prime.push_back(i);
- }
- }
- for(i=m;i<=N;i++)
- {
- if(isprime[i])prime.push_back(i);
- }
- }
- int main()
- {
- fastread();
- primefactor();
- int n,i;
- while(scanf("%d",&n))
- {
- if(n==0)break;
- else if(isprime[n])printf("0\n");
- else
- {
- i=upper_bound(prime.begin(),prime.end(),n)-prime.begin();
- printf("%d\n",prime[i]-prime[i-1]);
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement