题目:

2,3,5,7,11,13,.... 是素数序列。 类似:7,37,67,97,127,1577,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。

上边的数列公差为 30,长度为 6。

2004 年,格林与华人陶哲轩合作证明了:存在任意长度的素数等差数列。 这是数论领域一项惊人的成果!

有这一理论为基础,请你借助手中的计算机,满怀信心地搜索:

长度为 10的等差素数列,其公差最小值是多少?

解法是暴力破解

  • c++版
#include <stdio.h>
int a[100000]={0};
int check(int x) {if(x < 2) return 0;for(int i = 2; i < x; i++) {if(x%i == 0) {return 0;}}return 1;
}
int main() {for(int i = 2; i < 100000; i++) {if( check(i) ) {a[i] = 1;   //说明i为素数  赋1}}for(int cha = 1; cha < 10000; cha++) { //公差for(int i = 2; i < 100000; i++ ) {  //起始位置int count;for(count= 0 ; count < 10; count++) {if(a[ i+count*cha ] != 1) {  //说明这个数不是素数break;}}if(count == 10) {printf("%d",cha);return 0;}}}return 0;
}
  • Java版:
package lanqiaobei;public class test {public static boolean checkp(int x) {if(x<2) {return false;}for(int i=2;i<x;i++) {if(x%i==0) return false;}return true;}
public static void main(String[] args) {int[] primes = new int[100000];for(int i=0;i<100000;i++) {if(checkp(i))primes[i]=1;elseprimes[i]=0;}int timer=0;for(int gong=9;gong<10000;gong++) {for(int j=2;j<100000;j++) {int h=0;for(h =0;h<10;h++) {if((j+gong*h)>=100000) break;if(primes[j+gong*h]!=1) {break;}}if(h==10&&timer==0) {System.out.println("公差是"+gong);timer++;}}}}
}

注意,解法中c++版和java版的大题思路都是一样的,但是有一个点非常重要

在对不同公差情况进行暴力搜索时,判断能否构成长度10的素数等差数列时,采用的是从起始位置加1,2,3...次公差后,所在位置是否也为素数

在c++中,判断是否为素数是用

if(a[ i+count*cha ] != 1) {  //说明这个数不是素数
          break;
          }

在java中,判断是否为素数是用

if((j+gong*h)>=100000) break;
                 if(primes[j+gong*h]!=1) {
                    break;}

java版中的if((j+gong*h)>=100000) break;是为了避免越界(会越界就肯定不能构成长度10的等差数列直接break),c++数组读写是不做边界检查的(为了快),所以就稀里糊涂的break了,而在这之前,我发现会越界后直接采用if((j+gong*h)<100000&&primes[j+gong*h]!=1) {break;},这就导致了一个问题,所有不满足小于100000的都不会break,都不会break,那么都会达到10,都会达到10那么程序就误认为,这些j+gong*h大于100000的都可以构成一个长度10的等差数列,咔咔给我出了几万上十万的错误结果,我也不知道我哪根筋抽了

如有不对的地方敬请指正,谢谢!

蓝桥杯真题 17省2-等差素数列 2,3,5,7,11,13,....是素数序列。 类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。 上边的数列公差为30相关推荐

  1. 第八届蓝桥杯C/C++省赛题:2,3,5,7,11,13,....是素数序列。 类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列。 上边的数列公差为30……

    题目: 标题:等差素数列 2,3,5,7,11,13,-是素数序列. 类似:7,37,67,97,127,157 这样完全由素数组成的等差数列,叫等差素数数列. 上边的数列公差为30,长度为6. 20 ...

  2. 蓝桥杯真题 17省1-购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板忙的时候经常让小明帮忙到商场代为购物。小明很厌烦,但又不好推辞。 这不,XX大促销又来了!老板夫人开出了长长的

    问题描述 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞. 这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折优惠的 ...

  3. 蓝桥杯真题 17省3-承压计算 X星球的高科技实验室中整齐地堆放着某批珍贵金属原料。 每块金属原料的外形、尺寸完全一致,但重量不同。 金属材料被严格地堆放成金字塔形。

    问题描述 X星球的高科技实验室中整齐地堆放着某批珍贵金属原料. 每块金属原料的外形.尺寸完全一致,但重量不同. 金属材料被严格地堆放成金字塔形. 7 5 8 7 8 8 9 2 7 2 8 1 4 9 ...

  4. 7,37,67,97,127,1577,37,67,97,127,157 这样完全由素数组成的等差数列,求等差素数的最小公差

    public static void main(String[] args) {         int sum = 0;   // sum用来记录一次十次遍历有多少个素数         for ( ...

  5. 第十届蓝桥杯c语言试题,第十届蓝桥杯真题编程题1-7解析(高级组).pdf

    scratch 少儿编程第十届蓝桥杯真题 7 大家好 ~今天我们来讲解 scratch 蓝桥杯第十届编程大题的第七道题. 同样,这道题也是非常有难度的一道题.一起来看一下吧 解析: 女孩的程序 1.在 ...

  6. 第五届蓝桥杯真题解析【JavaC组】

    第五届蓝桥杯真题解析[JavaC组] 业精于勤,荒于嬉:行成于思,毁于随.--韩愈 文章目录 ***第五届蓝桥杯真题解析[JavaC组]*** 前言 A:猜年龄 B:等额本金 C:猜字母 D:大衍数列 ...

  7. 蓝桥杯python省赛冲刺篇2——常用算法的详细解析及对应蓝桥杯真题:打表模拟法、递推递归法、枚举法、贪心算法、差分与前缀和

    注意:加了题目链接 目录 注意:加了题目链接 一.打表模拟法 介绍 1. 算式问题 题目描述 解析与代码演示 2. 求值 题目描述 解析与代码演示 3. 既约分数 题目描述 解析与代码演示 4. 天干 ...

  8. 蓝桥杯真题2017-2021

    刷完近几年真题,感觉理解完之后,拿奖问题不大,本人这次获得2022年蓝桥杯javaB组省一,以下是历年javaB组省赛题目. 文章目录 2017年真题 一.购物单 二.纸牌三角形 三.承压计算 四.魔 ...

  9. c语言六角填数蓝桥杯答案,六角填数(全排列)蓝桥杯真题

    六角填数(全排列)蓝桥杯真题 六角填数(全排列)蓝桥杯真题 如图所示六角形中填入1-12的数字,使每条直线上的数字和相等,图中已经填好了3个数字,请你计算*号数字是多少 蓝桥杯老套路,经常这样考全排列 ...

最新文章

  1. Kafka为什么这么快?
  2. 算法----------字符串的排列(Java版本)
  3. 【数据分析】33个热门数据分析软件,你都用过哪些?
  4. go mod require + replace解决本地包依赖问题
  5. boost::hana::Comparable用法的测试程序
  6. NodeJs基础之字节操作、路径操作和文本操作
  7. SAP建议客户将UI技术迁移到Fiori的六大原因
  8. 7年老Android一次操蛋的面试经历,深度好文
  9. webso员ket php,客戶端和PHP後端通信:Sokets,Stream,TCP/UDP?
  10. linux 基础学习之目录与文件处理命令
  11. 7.从Paxos到Zookeeper分布式一致性原理与实践---Zookeeper 技术内幕
  12. Atitit.加密算法 des  aes 各个语言不同的原理与解决方案java php c#
  13. Perl语言入门笔记(一)
  14. 苏州科技大学计算机考研资料汇总
  15. Debian10校准时间同步系统时间和硬件时间的方法
  16. 记一次开发环境redis出现key丢失排查
  17. 摄像机服务器端返回消息错误,_平安城市_视频监控(本科)毕业论文设计.doc
  18. html5 怎么插指南针,分享 HT 实用技巧:实现指南针和 3D 魔方导航
  19. 实木地板被机器人弄成坑_钱花光哭成泪人,28个让人撕心裂肺装修坑,不注意新房就会被毁!...
  20. 指针里的*符号是要靠近变量类型还是要靠近变量名称?

热门文章

  1. windows中freeRTOS模拟器环境搭建
  2. C# DateTime.Now.ToString() 用法
  3. 用RealMedia Editor截取和合并RMVB视屏
  4. 详析像增强器的构造及作用——专为微弱信号探测而生
  5. 源恒软件--掌中财税进入“税务云”时代
  6. 集 成 运 算 同 相放大器和反 向放大器的选择
  7. Python模拟浏览器登录淘宝
  8. 用企业微信卖衣服的UR,是如何重新定义快时尚的?
  9. Java判断一个实体是不是空的
  10. Latex 公式编辑,添加大括号