1007

作者: 古界族邪神 | 来源:发表于2020-05-24 15:21 被阅读0次
    image.png
    这题很有意思
    大于2的偶数都不是质数
    2,3,5,7是10以内的质数,(2,3)不满足条件,所以从3开始,遍历所有奇数。比较每个奇数和下一个奇数是否满足条件。
    我们需要有高效的判断一个数是不是质数的函数
    可以参考:http://c.biancheng.net/view/498.html
    #include <iostream>
    #include <math.h>
    using namespace std;
    
    bool judge(int num)
    {
        int i;
        int k;
    
        k=(int)sqrt((double)num);
        for(i=2;i<=k;i++)
        {
            if(num%i==0)
                break;
        }
        if(i>k)
            return true;
        else
            return false;
    }
    
    int main()
    {
        int range;
        cin>>range;
        int sta=3;
        int res=0;
        while(sta<=range)
        {
            int next=sta+2;
            if(next>range)
                break;
            if(judge(sta)&&judge(next))
                res++;
    
            sta=next;
        }
        cout<<res<<endl;
        return 0;
    }
    
    1007.png

    相关文章

      网友评论

          本文标题:1007

          本文链接:https://www.haomeiwen.com/subject/vxhjahtx.html