2024蓝桥杯省赛C/C++程序设计A组题目简析
2024蓝桥杯省赛C/C++程序设计A组题目简析
A
题意:计算一段区间内日期的中文表达的总笔画数>50的天数
按照题意枚举即可。注意个位数字前面需要加一个“零”,也就是多13笔。
B
题意:的棋盘下五子棋,最终下满棋盘并和棋的情况数
dfs或者遍历二进制去枚举棋子位置的情况均可。
假设做法是去枚举黑棋位置的所有情况,一个简单的验证对错的方法是把黑棋的数量分别设置为12/13运行一次,如果答案不等说明写错了。
C
题意:有 个士兵,第 个士兵至少需要训练 次,每次训练花费 。可以每次花钱训练一个士兵,也可以花费 将所有士兵训练一次。求将所有士兵训练达标的最小代价。()
比较明显的贪心算法。先将士兵按照 排序,也就是越后面的士兵需要的训练次数越多。从第一个士兵开始往后遍历,做到 时,如果 ,那么打包训练更优,做 次打包训练( 为总共需要次数减去已经执行过的打包训练数);否则,单独训练已经优于打包,直接让答案加上 区间内每个士兵剩下需要单独训练的次数 训练花费,并退出循环。复杂度 .
D
题意:有两棵大小分别为 的以 为根的树,每个节点有权值,分别为 。起初两个人 分别站在两棵树的根节点,两人各自一路往下走直到叶子节点,设 经过的结点的权值按照顺序组成序列 , 的序列为 ,求两个序列的最长公共前缀的可能最大值。()
题目转化为:对于第一棵树上的每个节点 ,能否在第二棵树上找到一条一样的从根节点向下的权值路径。
需要快速判断两个序列是否一样,使用哈希函数。先dfs第二棵树,在递归时记录当前节点到根节点 这一段的哈希值,设节点 到 这一段的哈希值为 。
然后dfs第一棵树,记录当前节点的深度和哈希值,设节点 到 这一段哈希值为 ,每次只需要看看集合 里是否有 ,如果有,说明存在相同路径,答案与 的深度取 。
复杂度
E
题意:给定一个序列 ,求出最小的 ,使得能够选出 中的 个,使得这 个数的方差小于 。
的可行性单调(即 增长,成功的概率递增),可以二分 得出答案。问题转变成如何判定前 个数是否可行,即求出前 个数中选出 个的最小方差。
为了让方差最小,一定选取排序后相邻的 个数。所以有效的选法只有 种。将方差的式子拆分括号,变成 ,得到独立的两个部分,于是只需分别记录 和 ,当区间从 变成 时 地修改两个值,就可以算出方差的最小值,进而判定是否可行。
复杂度 。可改用倍增避开每次判定的暴力排序优化为 。
F
题意:给定一棵 个节点的树,树上的节点 的颜色为 。有 次询问,每次给出两个节点 ,问在 之间的树上路径上的节点有多少种不同的颜色。
几乎是树链剖分的模板题。由于颜色的种类很少,只需对每种颜色 开一个数组统计 序上的颜色为 的结点个数的前缀和,在剖出的每条树链上看看每种颜色有没有即可。
复杂度
G
题意:给定序列 ,四元组 是好的当且仅当 被 整除, 被 整除且 互不相等。问有多少个好的四元组。
观察到 的范围并不大,可以用 的方法枚举出每个数的因子,然后通过一些数组进行统计,不难得到 :满足 的 的数量。
如果没有 不等的条件,只需要考虑 的组合, 的情况为 , 总的答案也很好算。
不能相等,考虑容斥。先按照 不等,其它随意算出答案 ,然后减去 的数量 ,再减去 的数量 和 的数量 ,最后发现 的被减了两次,算出这部分的数量 。最后答案为 。 的计算都类似,不赘述。
容斥的过程稍微有点繁琐,考场上写了对拍,大概是对的。但没考虑到最后答案会超出 的范围......得用 或者用两个 拼接小小地高精度一下。
H
题意:有 个魔法球和 个空盒子,第 个魔法球的魔法值为 。现在要将球装入盒子中,每个盒子最多装一个,也可以空着,每个球也最多放入一个盒子中,且相邻的盒子不能放魔法值相同的球。初始体力值为 ,将第 个球装入第 个盒子中消耗 体力值。最后放了球的盒子权值 为球的魔法值,没放球的盒子 ,在保证体力值 的情况下请移动球使得 的字典序最大。
做法挺简单暴力。让字典序最大,自然从 开始往后遍历。遍历到 时,需要找到 区间内没被装掉的球里最大的且在所有最大的球里最靠左的那个(尽量节省体力),并把它装入 。用线段树维护区间最大值以及区间最大值所在最左端的位置即可,每次执行区间查找、单点修改操作。
但是相邻的两个不能相同,所以还得维护严格次大值和严格次大值最左端的位置,只是让区间合并变得更复杂一些。
复杂度 。
本文作者:-敲键盘的猫-
本文链接:https://www.cnblogs.com/whx666/p/18142018
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 本地部署 DeepSeek:小白也能轻松搞定!
· 传国玉玺易主,ai.com竟然跳转到国产AI
· 自己如何在本地电脑从零搭建DeepSeek!手把手教学,快来看看! (建议收藏)
· 我们是如何解决abp身上的几个痛点
· 如何基于DeepSeek开展AI项目
2021-04-17 Codeforces Round #607 (Div. 1)