第k组孪生素数 tzc

来源:互联网 发布:看图软件哪个好 编辑:程序博客网 时间:2024/05/17 02:29

筛选法求素数

#include<cstdio>#include<cstring>#define size 1261000int main(){    bool t[size];    int s[10001],c=0;    int i=2,v=2,n;    memset(t,0,size*sizeof(bool));    t[0]=t[1]=1;    while(i < size)    {        if(t[i] == 0)        {            if(i-v==2) s[++c]=i;            for(int j = 2; i*j < size; j++)            {                t[i*j] = 1;            }            v=i;        }        i++;    }    while(scanf("%d",&n)!=EOF)    {        printf("%d %d\n",s[n]-2,s[n]);    }    return 0;}


最古老的求素数法

#include<cstdio>#include<cmath>bool isprime(int n){    for(int i=2;i<=sqrt(n);i++)    {        if(n%i==0) return 0;    }    return 1;}int main(){    int n,c=0,s[10001];    bool t1=1,t2;    for(int i=3;c<10000;i+=2)    {        t2=isprime(i+2);        if(t1 && t2) s[++c]=i;        t1=t2;    }    while(scanf("%d",&n)!=EOF)    {        printf("%d %d\n",s[n],s[n]+2);    }    return 0;}