蓝桥杯(等差素数列,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;
				}
			}
		}
	}
}
相关推荐
波特率1152005 分钟前
C++当中is-a(继承)与has-a(成员对象)的辨析与使用指南(包含实际工程当中的使用示例)
c++·ros·串口通信
Queenie_Charlie12 分钟前
最长回文子串 V2(Manacher算法)
c++·算法·manacher算法
不想看见40443 分钟前
C++八股文【详细总结】
java·开发语言·c++
江公望1 小时前
C++11 std::function,10分钟讲清楚
开发语言·c++
leaves falling1 小时前
C++入门基础
开发语言·c++
你真是饿了1 小时前
10.list
c++·list
tankeven1 小时前
HJ139 小红的01子序列计数(hard)
c++·算法
weixin_649555671 小时前
C语言程序设计第四版(何钦铭、颜晖)第十章函数与程序设计之汉诺塔问题
c语言·c++·算法
xushichao19891 小时前
实时数据压缩库
开发语言·c++·算法
minji...1 小时前
Linux 文件系统 (三) 软连接和硬链接
linux·运维·服务器·c++·算法