• pat00-自测2. 素数对猜想 (20)


    00-自测2. 素数对猜想 (20)

    时间限制
    400 ms
    内存限制
    65536 kB
    代码长度限制
    8000 B
    判题程序
    Standard
    作者
    CHEN, Yue

    让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

    现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数。

    输入格式:每个测试输入包含1个测试用例,给出正整数N。

    输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。

    输入样例:
    20
    
    输出样例:
    4
    

    提交代码

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <string>
     4 #include <queue>
     5 #include <cmath>
     6 #include <iostream>
     7 using namespace std;
     8 bool isprime[100005];
     9 int prime[10000],primenum=0;
    10 void getprime(int n){
    11     memset(isprime,true,sizeof(isprime));
    12     isprime[0]=isprime[1]=false;
    13     //cout<<primenum<<endl;
    14     int i,j;
    15     for(i=2;i<=n;i++){
    16         //cout<<i<<endl;
    17         if(isprime[i]){
    18             //cout<<i<<endl;
    19             for(j=i+i;j<=n;j+=i){
    20                 //cout<<i<<" "<<j<<endl;
    21                 isprime[j]=false;
    22             }
    23         }
    24     }
    25     //cout<<primenum<<endl;
    26     for(i=2;i<=n;i++){
    27         if(isprime[i]){
    28             prime[primenum++]=i;
    29             //cout<<prime[primenum-1]<<endl;
    30         }
    31     }
    32     //cout<<primenum<<endl;
    33 }
    34 int main(){
    35     int n,num=0,i;
    36     getprime(100005);
    37     scanf("%d",&n);
    38     for(i=0;i<primenum-1&&prime[i+1]<=n;i++){
    39         if(prime[i+1]-prime[i]==2){
    40             //cout<<prime[i]<<endl;
    41             num++;
    42         }
    43     }
    44     cout<<num<<endl;
    45     return 0;
    46 }
  • 相关阅读:
    hdu 5036 概率+bitset
    hdu 5037 周期优化
    hdu 5038 求出现次数最多的grade
    hdu 5040 bfs
    hdu 5045 N个人做M道题的正确率
    hdu 5046 二分+DLX模板
    hdu 5047 大数找规律
    c:set注意事项
    It is indirectly referenced from required .class files(导入项目报错原因与解决方法)
    oracle-01722,函数subtr,instr
  • 原文地址:https://www.cnblogs.com/Deribs4/p/4716711.html
Copyright © 2020-2023  润新知