蓝桥杯(等差素数列,C++)

思路:

1、因为找的是长度为10,且公差最小的等差素数列,直接用枚举即可。

2、枚举用三重循环,第一重枚举首项,第二重枚举公差,第三重因为首项算一个,所以枚举九个等差素数。

代码:

cpp 复制代码
#include<iostream>
using namespace std;
int sushu(int n)//判断是否为素数
{
	for (int i = 2; i < n / 2; i++)
		if (n % i == 0)//不是素数
			return 0;
	return 1;
}
int main()
{
	int flag = 1;//计数
	for (int i = 2; i < 10000; i++)//枚举首项
	{
		if (sushu(i))
		{
			for (int j = 2; j < 1000; j++)//枚举公差
			{
				for (int k = 1; k < 10; k++)//本身算一个,再找九个数
				{
					if (sushu(i + j * k))
						flag++;
					else
					{
						flag = 1;
						break;
					}
				}
				if (flag == 10)
				{
					cout << j;
					break;
				}
			}
		}
	}
}
相关推荐
Ricky_Theseus38 分钟前
C++右值引用
java·开发语言·c++
吴梓穆1 小时前
UE5 c++ 常用方法
java·c++·ue5
云栖梦泽1 小时前
Linux内核与驱动:9.Linux 驱动 API 封装
linux·c++
Morwit2 小时前
【力扣hot100】 1. 两数之和
数据结构·c++·算法·leetcode·职场和发展
SpiderPex2 小时前
第十七届蓝桥杯 C++ B组-题目 (最新出炉 )
c++·职场和发展·蓝桥杯
炘爚2 小时前
C++ 右值引用与程序优化
开发语言·c++
si莉亚2 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源
zyq99101_13 小时前
DFS算法实战:经典例题代码解析
python·算法·蓝桥杯·深度优先
智者知已应修善业3 小时前
【51单片机单按键切换广告屏】2023-5-17
c++·经验分享·笔记·算法·51单片机
qinian_ztc3 小时前
frida 14.2.18 安装报错解决
算法·leetcode·职场和发展