1007

#include<iostream>
#include<string>
#include<vector>
#include<cmath>

using namespace std;

bool judge_zhishu(unsigned num)
{
    for (unsigned i = 2; i <= sqrt(num); ++i)
    {
        if (0 == num%i)
            return false;
    }
    return true;
}

vector<int> zhishu(unsigned n)
{
    vector<int> zhishu;
    if (n < 2)
    {
        return zhishu;
    }
    else
    {
        if (n == 2)
        {
            zhishu.push_back(2);
            return zhishu;
        }
        else
        {
            for (unsigned i = 2; i <= n; ++i)
            {
                if (judge_zhishu(i))
                    zhishu.push_back(i);
            }
        }
    }
    return zhishu;
}


int main()
{
    unsigned  n=0;
    cin >> n;
    vector<int> zhishu_numbers = zhishu(n);

    auto beg = zhishu_numbers.cbegin();
    auto next = beg + 1;
    unsigned count = 0;
    for (; next != (zhishu_numbers.cend()); ++beg,++next)
    {
        if ((*next - *beg) == 2)
            ++count;
    }
    cout << count;


    system("pause");
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容