一千题,No.0014(素数对猜想)

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

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

输入格式:

输入在一行给出正整数N。

输出格式:

在一行中输出不超过N的满足猜想的素数对的个数。

输入样例:

复制代码
20

输出样例:

复制代码
4

解题思路:

用left存储左边的数字,循环到n,如果i-left = 2则使结果+1,并每次使left更新为i

c++代码如下:

cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

bool is_num(int n)
{
    if(n < 2)
    {
        return false;
    }

    for(int i = 2;i <= ::sqrt(n);++i)
    {
        if(n%i == 0)
        {
            return false;
        }
    }
    return true;
}

int main()
{
    int res = 0;
    int n;
    cin >> n;
    int left = 2;//左边的数
    for(int i = 3;i <= n;++i)
    {
        if(is_num(i))//如果不是质数则不必理会
        {
            if(i-left == 2)
            {
                ++res;
            }
            left = i;//更新left
        }
    }
    cout << res;
}
相关推荐
垆边人似月.1 小时前
华为机试题 :字符串压缩
算法·华为
ggb喔1 小时前
52pojie 的图片工具:为什么无损转换后体积涨了 6 倍、照片方向还是歪的
图像处理·python·算法·计算机视觉·图形渲染·媒体
菜鸟~noob2331 小时前
【电子战】第25篇:自由空间、双射线与菲涅尔区【含matlab代码】
开发语言·算法·matlab
地平线开发者1 小时前
地平线征程6M YOLOv8s 部署
算法·自动驾驶
Run_Teenage1 小时前
算法:Manacher(马拉车)算法、中心扩展算法
算法
Tisfy2 小时前
LeetCode 0301.删除无效的括号:二进制枚举 / 回溯
算法·leetcode·字符串·题解·回溯·括号匹配·二进制枚举
Nil2082 小时前
leetcode 322零钱兑换
算法·leetcode·职场和发展
海绵宝宝转agent2 小时前
2026-10-9 leetcode100刷题+面经整理
笔记·算法·面试
yi0112 小时前
DAY24: LeetCode 167:两数之和 II|从暴力枚举到左右双指针
笔记·python·算法·leetcode·二分查找·双指针
木井巳2 小时前
【BFS 解决拓扑排序】课程表
java·算法·leetcode·广度优先·宽度优先·推荐算法·图搜索算法