Algorithm

备战夏令营机试 + 顺便准备一下蓝桥杯
时隔半年重新学习算法…

2025.3.13

学习 bitset 的用法

经典的三道回溯问题,复健效果不错:

  1. 递归实现指数型枚举
  2. 递归实现组合型枚举
  3. 递归实现排列型枚举

一道开灯问题,折磨一个半小时发现每轮初始化没做好…
费解的开关

对于输入 n 解决 n 轮问题,每轮问题的初始化一定要做好

四根柱子的汉诺塔,似懂非懂.jpg
奇怪的汉诺塔

对于没思路的题目,可以强行尝试一个无法证明对错的简单思想

2025.3.14

做程设分享 ppt,顺便复习一下栈

后缀表达式计算,复健顺利:
后缀表达式的值

注意 long long,stoi/stol/stoll 的选择

把程设实践的计算器题做了详解,把表达式转化为 token 序列,再通过 expression 逐层转化为树结构,最后通过后序遍历输出结果,很巧妙的思路

2025.3.15

因为《算法进阶指南》有关分治的题有点难了,转战蓝桥杯题库(虽然两个都不会)

一道很巧妙的分治题目,带点数学定理
战斗力评估

2025.3.16

复习了下前缀和,因为一个小马虎卡了半天…
激光炸弹

复习了一下差分
增减序列

一道很巧妙的题,将对区间的操作转换为对区间端点的操作,再通过前缀和恢复,同时又因为小马虎浪费了十五分钟…
最高的牛

unordered_map 需要实现 key 的哈希函数,若无法实现可以选择换成 map,只需要实现 key 的比较重载

2025.3.17

实数域上的二分,把求最优解的问题,转化为给定一个值 mid,判定是否存在一个可行方案评分达到 mid 的问题
最佳牛围栏

有时候数组数据从下标 1 开始会更方便

向有序数组中插入值,通过二分的方式锁定插入位置
特殊排序

2025.3.18

离散化,背模板
电影

很弱智一道题,涉及中位数
货仓地址

“对顶堆算法”,复习了一下优先队列
动态中位数

用归并排序统计逆序对数,背了一下合并两个有序数组的优美代码
抄快速排序

一道数学题,先看答案后做题.jpg
奇数码问题

2025.3.19

倍增,没学过,不知道哪里错了破防抄题解.jpg
同时学习了一下 ST 算法,开背
天才 ACM

2025.3.24

摆烂了几天没学

贪心算法,区间排序问题
防晒

贪心算法,也是区间排序问题,但是涉及到小根堆的维护,很多库函数还是不熟练
畜栏预定

set/map 的迭代器不允许自增自减,可以使用 next/prev 函数完成

lower_bound 返回一个迭代器,指向 第一个大于或等于给定值的元素
upper_bound 返回一个迭代器,指向 第一个大于给定值的元素

make_pair 也可以用 {} 语法替代

2025.3.26

偷偷少学一天

简单枚举题,做题速度还是不够快
飞行员兄弟

2025.3.27

模拟题
占卜 DIY

分治
分形

也是递归,居然这么简单的思路想不到
防线

2025.4.7

咕咕

终于学上图论了,很巧妙的二分答案加最短路径(怎么想出来的),deque 求解权重只有 0/1 的最短路径(一般情况用优先队列)
通信链路

2025.4.11

求正向和反向最短/最长路径,学习了一下 SPFA 算法
最优贸易

相当复杂一道题,拓扑排序 + 堆优化 Dijkstra
道路与航线

Floyd 另一种使用场景,二元关系
排序

Floyd 的核心思想,不断用新的点去更新之前的最优解
观光之旅

2025.4.26

考完蓝桥杯了,感觉还可以,今年的题格外简单。

算法搁置一段时间,入营了再说。


Algorithm
https://dmx20070206.github.io/2025/03/12/algorithm/
Author
DM-X~X~X
Posted on
March 12, 2025
Licensed under