代码编织梦想

1 找素数

#include <iostream>
#include <cmath>
using namespace std;

bool isPrime(int num) {
//2, 3质数单独做讨论
  if(num == 2 || num == 3) return true;
//我们发现5以上的质数均在6两侧,但是注意6两侧的数不一定是质数
  if(num % 6 != 1 && num % 6 != 5) return false;
  for(int i = 5; i <= sqrt(num); i += 6) {
    if(num % i == 0 || num % (i+2) == 0)
      return false;
  }
  return true; 
}

int main() {
  int i = 2, cnt = 0;
  while(true) {
    if(isPrime(i)) cnt++;
    if(cnt == 100002) {
      cout << i << endl;
      break;
    }
    i++;
  }
  return 0;
}

2 图书排列

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int a,b,c,d,e,f,g,h,i,m;
  int count=0;
  for(a=1;a<11;a++){
    for(b=1;b<11;b++){
      for(c=1;c<11;c++){
        for(d=1;d<11;d++){
          for(e=1;e<11;e++){
            for(f=1;f<11;f++){
              for(g=1;g<11;g++){
                for(h=1;h<11;h++){
                  for(i=1;i<11;i++){
                    for(m=1;m<11;m++){
                       if(a+1!=b&&b+1!=c&&c+1!=d&&d+1!=e&&e+1!=f&&f+1!=g&&g+1!=h&&h+1!=i&&i+1!=m&&
                       a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i&&a!=m&&
                       b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&b!=i&&b!=m&&
                       c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&c!=i&&c!=m&&
                       d!=e&&d!=f&&d!=g&&d!=h&&d!=i&&d!=m&&
                       e!=f&&e!=g&&e!=h&&e!=i&&e!=m&&
                       f!=g&&f!=h&&f!=i&&f!=m&&
                       g!=h&&g!=i&&g!=m&&
                       h!=i&&h!=m&&i!=m&&a-1!=b&&b-1!=c&&c-1!=d&&d-1!=e&&e-1!=f&&f-1!=g&&g-1!=h&&h-1!=i&&i-1!=m
                       ){
                            //printf("%d%d%d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h,i,m);
                         count++;
                        
                       }
                    
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
  printf("%d",count);
  return 0;
}

只会采取暴力求解的方式,没有很好地思绪

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_60915103/article/details/129482340

代码随想录-爱代码爱编程

Day 0 代码随想录 今天开始准备明天的第一天代码随想录训练营的练习 新的改变 首先看了看题目发现C++由于提前放假只是粗略的学习完了,但是还有很多细节没有到位,决定: 1.做完C++幕布笔记 2.练习同时进行复

算法训练营 day64 单调栈 柱状图中最大的矩形 训练营完结!!!-爱代码爱编程

算法训练营 day64 单调栈 柱状图中最大的矩形 训练营完结!!! 柱状图中最大的矩形 84. 柱状图中最大的矩形 - 力扣(LeetCode) 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻

【蓝桥杯刷题训练营】day04-爱代码爱编程

1 九数算式 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; void Swap(int* x, int* y)

蓝桥杯入门即劝退(二十六)组合问题(回溯算法)-爱代码爱编程

-----持续更新Spring入门系列文章----- 如果你也喜欢Java和算法,欢迎订阅专栏共同学习交流! 你的点赞、关注、评论、是我创作的动力! -------希望我的文章对你有所帮助-------- 专栏:蓝桥杯系列   一、题目描述 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何

【蓝桥杯刷题训练营】day05-爱代码爱编程

1 数的分解 拆分成3个数相加得到该数 然后采用了一种巨愚蠢的办法: int main() { int count = 0; int a = 2; int b = 0; int c =

蓝桥杯刷题第六天-爱代码爱编程

第一题:星期计算 问题描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 已知今天是星期六,请问 20的 22次方 天后是星期几? 注意用数字 1 到 7 表示星期一到星期日。 运行限制 最大运行时间:1s 最大运行内存: 512M 快速幂模

蓝桥杯刷题第七天-爱代码爱编程

第一题:三角回文数 问题描述 对于正整数 n, 如果存在正整数 k 使得2n=1+2+3+⋯+k= 2k(k+1) , 则 n 称为三角数。例如, 66066 是一个三角数, 因为 66066=1+2+3+⋯+363。 如果一个整数从左到右读出所有数位上的数字, 与从右到左读出所有数位 上的数字是一样的, 则称这个数

蓝桥杯第十四届蓝桥杯模拟赛第三期考场应对攻略(c/c++)-爱代码爱编程

这里把我的想法和思路写出来,恳请批评指正! 目录 考前准备 试题1: 试题2: 试题3: 试题4: 试题5: 试题6: 试题7: 试题8: 试题9: 试题10: 总结: 考前准备 考前五分钟,开十个源文件,并把头文件等必须写的部分写出来,写完的程序一定要有顺序地保留 试题1: 问题描述 请找到一个大于 2022 的最小数

第十四届蓝桥杯三月真题刷题训练——第 9 天-爱代码爱编程

第 1 题:找素数   题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 素数就是不能再进行等分的整数。比如:7,11。而 9 不是素数,因为它可以平分为 3 等份。一般认为最小的素数是22,接着是 3,5,... 请问,第 100002(十万零二)个素数是多少? 请注意:“2”是第一素数,“3”

蓝桥杯刷题第九天-爱代码爱编程

题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 素数就是不能再进行等分的整数。比如7,11。而 9 不是素数,因为它可以平分为 3 等份。一般认为最小的素数是2,接着是 3,5,... 请问,第 100002(十万零二)个素数是多少? 请注意:“2” 是第一素数,“3”

【蓝桥杯集训·每日一题】acwing 3728. 城市通电-爱代码爱编程

文章目录 一、题目1、原题链接2、题目描述 二、解题报告1、思路分析2、时间复杂度3、代码详解 三、知识风暴Prim算法 一、题目 1、原题链接 3728. 城市通电 2、