POJ-3518 Prime Gap
题意:给定一个数k,求包含k在内的连续非素数序列的长度。
思路:水..........
题目链接:http://poj.org/problem?id=3518
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #include <cstdio> 2 #include <cstring> 3 #include <cstdlib> 4 #include <cmath> 5 #include <string> 6 #include <algorithm> 7 #include <iostream> 8 using namespace std; 9 const int N=1300000; 10 11 bool prime[N]; 12 int k; 13 14 int main(){ 15 16 // freopen("data.in","r",stdin); 17 // freopen("data.out","w",stdout); 18 19 for(int i=2;i<N;i++) 20 if(!prime[i]) 21 for(int j=2;j*i<N;j++) 22 prime[i*j]=true; 23 while(scanf("%d",&k),k){ 24 int cnt=0; 25 if(!prime[k]){ 26 puts("0"); 27 continue; 28 } 29 for(int i=k-1;i>1;i--){ 30 if(!prime[i]) break; 31 cnt++; 32 } 33 for(int i=k+1;i<N;i++){ 34 if(!prime[i]) break; 35 cnt++; 36 } 37 printf("%d\n",cnt+2); 38 } 39 return 0; 40 }