蓝桥杯(等差素数列,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;
				}
			}
		}
	}
}
相关推荐
淼淼7631 分钟前
工厂方法模式
开发语言·c++·windows·qt·工厂方法模式
Tan_Zhixia8 分钟前
时间复杂度判断
数据结构·c++·算法
☆cwlulu14 分钟前
C/C++ 内存分配函数详解
c语言·c++
羑悻的小杀马特22 分钟前
Lua vs C++:核心设计哲学差异——从“系统基石”到“灵活工具”的思维碰撞
c++·lua
Arciab22 分钟前
C++ 学习_流程控制
c++·学习
H_-H1 小时前
值返回与引用返回(c++)
开发语言·c++
夏鹏今天学习了吗2 小时前
【LeetCode热题100(73/100)】买卖股票的最佳时机
算法·leetcode·职场和发展
XFF不秃头2 小时前
【力扣刷题笔记-在排序数组中查找元素的第一个和最后一个位置】
c++·笔记·算法·leetcode
爱装代码的小瓶子2 小时前
【c++进阶】在c++11之前的编译器的努力
开发语言·c++·vscode·visualstudio·编辑器·vim
蜗牛love天空2 小时前
vs的运行库区别,静态连接mt和动态链接md运行库
c++