Prime Gap

来源:互联网 发布:macbook办公软件好用吗 编辑:程序博客网 时间:2024/05/17 22:09

http://poj.org/problem?id=3518

// File Name: poj3518.cpp// Author: bo_jwolf// Created Time: 2013年10月11日 星期五 15:46:48#include<vector>#include<list>#include<map>#include<set>#include<deque>#include<stack>#include<bitset>#include<algorithm>#include<functional>#include<numeric>#include<utility>#include<sstream>#include<iostream>#include<iomanip>#include<cstdio>#include<cmath>#include<cstdlib>#include<cstring>#include<ctime>using namespace std;const int maxn = 1399709;vector< int > prime;int unprime[ maxn ];void Union(){memset( unprime, 0, sizeof( unprime ) );unprime[ 0 ] = unprime[ 1 ] = true;for( int i = 2; i < maxn; ++i ){if( !unprime[ i ] ){prime.push_back( i );for( int j = i + i; j < maxn; j += i ){unprime[ j ] = true;}}}}int main(){Union();int n, l, r, mid;while( cin >> n ){if( !n )break;int ans = 0;l = 0;r = prime.size() - 1;for( int i = 0; i < prime.size(); ++i ){if( prime[ i ] < n && prime[ i + 1 ] > n ){ans = prime[ i + 1 ] - prime[ i ];}}cout << ans << endl;}return 0;}