【蓝桥杯】什么算法才是版本答案?近三年(2019-2021)蓝桥杯省赛涉及算法出现频率分析

2023-11-14

2022年的蓝桥杯比赛已经基本报名结束,寒假来临,如何抓住重点,快速掌握各种算法知识,在4月份的蓝桥杯省赛中取得好成绩呢?本文收集了近三年的4场蓝桥杯省赛题目,(2019年,2020年第二场,2020年第三场,2021年)。并总结了题目涉及的算法,意在分析各种算法在蓝桥杯中的重要程度。算法共分为7大类,分别是:图论,数论,数据结构,动态规划,枚举模拟,搜索,贪心思维。列出如下表格:

2021年省赛C语言大学A组
题目名称 难度 分值 涉及算法
A、卡片 5 枚举模拟
B、直线 ★★ 5 枚举模拟
C、货物摆放 10 数论
D、路径 ★★ 10 图论
E、回路计数 ★★★ 15 动态规划
F、砝码称重 ★★ 15 动态规划
G、异或数列 ★★★★ 20 贪心思维
H、左孩子右兄弟 ★★★ 20 动态规划
I、括号序列 ★★★★ 25 动态规划
J、分果果 ★★★★★ 25 动态规划
2020年省赛C语言大学A组(第二场)
题目名称 难度 分值 涉及算法
A、门牌制作 5 枚举模拟
B、既约分数 5 数论
C、蛇形填数 ★★ 10 枚举模拟
D、七段码 ★★★ 10 搜索
E、平面分割 ★★★★ 15 枚举模拟
F、成绩分析 15 枚举模拟
G、回文日期 ★★ 20 枚举模拟
H、子串分值 ★★★ 20 数据结构
I、荒岛探测 ★★★ 25 枚举模拟
J、字串排序 ★★★★★ 25 贪心思维
2020年省赛C语言大学A组(第三场)
题目名称 难度 分值 涉及算法
A、数青蛙 5 枚举模拟
B、互质 5 数论
C、车牌 10 枚举模拟
D、Fibonacci 集合 ★★ 10 枚举模拟
E、上升子串 ★★★ 15 动态规划
F、日期识别 15 枚举模拟
G、乘法表 ★★ 20 枚举模拟
H、限高杆 ★★★ 20 搜索
I、画中漂流 ★★★ 25 动态规划
J、旅行家 ★★★★★ 25 动态规划
2019年省赛C语言大学A组
题目名称 难度 分值 涉及算法
A、平方和 5 枚举模拟
B、数列求值 5 枚举模拟
C、最大降雨量 ★★ 10 贪心思维
D、迷宫 ★★★ 10 搜索
E、RSA ★★★★ 15 数论
F、完全二叉树的权值 ★★ 15 动态规划
G、外卖店优先级 ★★★ 20 数据结构
H、修改数组 ★★★ 20 图论
I、糖果 ★★★★ 25 动态规划
J、组合数问题 ★★★★★ 25 数论

出现频率分析

从题目数量来看:出现频率最多的就是枚举,模拟,以及动态规划,不愧被民间叫做暴力杯。
在这里插入图片描述

平均难度分析

从题目困难程度来统计:依然是枚举相对最容易得分,其次则是数论和图论,只需要记住一些关键的算法模板,就可以将题目带入得分。例如:最短路算法(Dijkstra、floyd),质因数分解,质数判断,最大公因数(gcd)等。最难的则是贪心算法和动态规划,做法相对更不确定,变形较多,仅仅动态规划就可以分成,01背包型,线性递推型,区间动态规划,状态压缩,树形动态规划等多种类别。但是只要能认真总结,动态规划也不失为一得分大项。

在这里插入图片描述

得分效益分析

此外因为难度不同,下面按照题目难度为分数设计收益系数,1星题目到5星题目,收益系数分别为:10,8,5,3,1。

例如一道3星难度,分值为15的题目,收益则为:5*15=75。如此按照题目困难程度加权计算收益排名如下:
在这里插入图片描述

算法模板:

此处给出,出现最频繁的两个基础操作的代码模板:

(1)x的k进制拆分

将任意一个数字x,进行k进制拆分,存储到数组中。几乎每一年的每个组的题目均会出现该问题,k常见的取值是10或者2。

// 返回x的k进制表示
vector<int> Split(int x, int k) {
  vector<int> ret;

  if (x == 0) { // 如果输入数据就是0那么需要返回一个单独的0数字
    ret.push_back(0);
    return ret;
  }
  while (x > 0) {
    ret.push_back(x % k);
    x /= k;
  }
  reverse(ret.begin(), ret.end());
  return ret;
}
(2)x质因数分解

x x x 质因数分解表示成: x = p 0 a 0 ∗ p 1 a 1 ∗ . . . ∗ p n a n x=p_0^{a_0} * p_1^{a_1} *...*p_n^{a_n} x=p0a0p1a1...pnan,其中: p 0 , p 1 , . . . , p n p_0,p_1,...,p_n p0,p1,...,pn均为质数。

/// 返回x的质因数分解结果,每一个pair的第一个元素为质因数p,第二个元素为指数a。
vector<pair<int, int> > GetPrimeFactor(int x) {
  vector<pair<int, int> > ret;
  for (int i = 2; i * i <= x; i++) {
    if (x % i == 0) {
      int cnt = 0;
      while (x % i == 0) {
        cnt++;
        x /= i;
      }
      // x的质因子i出现了cnt次
      ret.push_back(make_pair(i, cnt));
    }
  }
  if (x > 1) {
    ret.push_back(make_pair(x, 1));
  }
  return ret;
}

/// 打印结果
void PrintAns(int x, const vector<pair<int, int>> ans) {
  printf("%d = ", x);
  for (int i = 0; i < ans.size(); i++) {
    if (i != 0) {
      printf(" + ");
    }
    printf("%d^%d", ans[i].first, ans[i].second);
  }
  printf("\n");
}

往届题解:

【蓝桥杯真题】2021年蓝桥杯省赛题目解析+代码(python组)
【蓝桥杯真题】2021年蓝桥杯省赛B组题目解析+代码(C/C++)
【蓝桥杯真题】2021年蓝桥杯省赛A组题目解析+代码(C/C++)

欢迎关注公众号:算法梦工厂,获取更多:往届真题题解,算法讲解课程,省赛测试数据。

在这里插入图片描述蓝桥杯备赛qq群:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【蓝桥杯】什么算法才是版本答案?近三年(2019-2021)蓝桥杯省赛涉及算法出现频率分析 的相关文章

随机推荐

  • 安装--centos7上使用kubeadm安装三节点的k8s集群

    安装文档 https kubernetes io zh cn docs setup production environment tools kubeadm install kubeadm 参考 https blog csdn net qq
  • 瑞吉外卖业务开发

    一 软件开发整体介绍 软件开发流程 需求分析 产品原型 需求规格说明书 设计 产品文档 UI界面设计 概要设计 详细设计 数据库设计 编码 项目代码 单元测试 测试 测试用例 测试报告 上线运维 软件环境安装 配置 角色分工 项目经理 对整
  • 2023华为OD机试真题【垃圾短信识别】

    题目描述 大众对垃圾短信深恶痛绝 希望能对垃圾短信发送者进行识别 为此 很多软件增加了垃圾短信的识别机制 经分析 发现正常用户的短信通常具备交互性 而垃圾短信往往都是大量单向的短信 按照如下规则进行垃圾短信识别 本题中 发送者A符合以下条件
  • unity3d FPS 枪的后座力

    实现枪开枪后 向上偏移一段距离 再缓慢下移复位 模仿cs 调小后座力 using UnityEngine using System Collections public class Camera2Follower MonoBehaviour
  • Linux驱动开发--平台总线id和设备树匹配

    目录 一 ID匹配之框架代码 二 ID匹配之led驱动 三 设备树匹配 四 设备树匹配之led驱动 五 一个编写驱动用的宏 一 ID匹配之框架代码 id匹配 可想象成八字匹配 一个驱动可以对应多个设备 优先级次低 注意事项 device模块
  • 学会QT从这里开始——教你快速学会QT

    为了提高提高推文质量 最近又再翻看QT书籍 不知道大家有没有发现 QT书籍大多都是从环境 安装 控件开始讲解 好 现在开始学习吧 1 环境安装 2 新建项目 3 学习控件 QButton QLable QLineEdit QTextEdit
  • nacos2.2.1集成达梦数据库

    nacos2 2 1集成达梦数据库 1 下载源码 https github com alibaba nacos 2 新增达梦驱动依赖 父pom xml
  • openwrt篇修改WiFi热点默认名称和主机名

    在如下图文件中 修改ssid 在如下图文件中修改hostname
  • Linux的用户空间与内核空间

    一 简介 Linux 操作系统和驱动程序运行在内核空间 应用程序运行在用户空间 两者不能简单地使用指针传递数据 因为Linux使用的虚拟内存机制 用户空间的数据可能被换出 当内核空间使用用户空间指针时 对应的数据可能不在内存中 用户空间的内
  • vue3项目引入高德地图详细方法教程

    项目需求需要引入地图 对于目前最新的Vue3 0 无论是百度 高德 腾讯地图目前还没有适配 只有Vue 2 x版本的 目前只有谷歌地图的Vue3 0适配 但是没有适配并不代表不能使用 下面就来教大家如何使用 1 在高德开发平台申请你的key
  • react定义函数,默认函数参数的方式

    参数是 对象 有传入参数用传入参数作为入参数 无传入参数用默认值 getTableData async pageData gt const params Object assign currPage 1 pageSize this stat
  • 网传字节跳动实习生删除GB以下所有机器学习模型,差点没上头条

    作者 陈大鑫 陈彩娴 来源 AI科技评论 昨晚脉脉上有网友爆料 字节跳动一位实习生删除了公司所有轻量级别的机器学习模型 什么是lite模型 该楼主表示 lite模型就是公司内几乎所有GB大小以下的机器学习模型 且全部被删除了 实习生直接删除
  • 公司固定资产怎么明细管理

    固定资产的管理是一个至关重要的环节 它不仅影响到企业的运营效率和经济效益 也直接影响到公司的长期发展 因此 对固定资产进行精细化管理 是每一个负责任的企业都应该做到的 本文将探讨如何通过创新的方式 实现公司固定资产的明细管理 我们需要明确什
  • 设置vscode终端的最大输出行

    使用vscode终端输出的时候 如果输出的行数很多 之前打印的东西就看不到了 因此需要设置一下终端输出的最大行数来保留之前的信息 terminal integrated bell scrollback
  • MMDet——EMA更新hook详解

    Hook 首先需要明白mmdet中hook机制 EMA就是建立在Hook机制上的 推荐一个Hook详解 深度理解目标检测 MMdetection HOOK机制 EMA 指数平均 exponential mean average 一般来说 在
  • 使用Google Guava Cache Util工具类实现本地缓存设置过期时间的Java应用

    使用Google Guava Cache Util工具类实现本地缓存设置过期时间的Java应用 随着互联网应用的发展 缓存成为提高系统性能和响应速度的关键技术之一 而在Java开发中 Google Guava提供了一个强大的缓存工具类 Ca
  • 关于数据库表字段的数据权限设计

    吐槽 刚在同事的帮忙下 把maven工程成功导入到eclipse 期间遇到的最大问题就是安装eclipse插件 花费了其中大部分的时间 现在做的研发产品 遇到的一个新的需求是 控制外部系统对于表中字段的访问权限 其实说白了 就是 对于CRU
  • sklearn机器学习包中的对原始数据的预处理及训练集、测试集的分割

    sklearn机器学习包中的对原始数据的预处理及训练集 测试集的分割 一 数据预处理 1 标准化 2 归一化 3 最小最大标准化 4 缺失值插补 二 训练集测试集的划分 一 数据预处理 sklearn preprocessing 包提供了几
  • 编码-整数

    计算机中存储的数值 正数为其原码 而负数存的是其补码 正数 原码 用最高位表示符号位 其余位表示数值 其中 正数的符号位为 0 负数的符号位为 1 正整数转成二进制 除二取余 直到商为零或一时为止 然后倒序排列 举个栗子 121 gt 0
  • 【蓝桥杯】什么算法才是版本答案?近三年(2019-2021)蓝桥杯省赛涉及算法出现频率分析

    2022年的蓝桥杯比赛已经基本报名结束 寒假来临 如何抓住重点 快速掌握各种算法知识 在4月份的蓝桥杯省赛中取得好成绩呢 本文收集了近三年的4场蓝桥杯省赛题目 2019年 2020年第二场 2020年第三场 2021年 并总结了题目涉及的算