FBH的Trick小本本

FBH 的 Trick 小本本

2026-01-10

我觉得总结这个是对的。

忽略正负号

题目:CF351E

这个题忽略符号直接按照绝对值做就行,因为所有位置都接受操作,可以使得一个位置变化后,受影响位置进行变化加以对冲。

2026-01-12

Tarjan缩点后点的排序是逆拓扑序的

拓扑序上 DP 判断重边需要记录上一次的转移位置

题目:LGP2272

这个题缩完点后就可以直接 DP 了,不用再跑拓扑排序。

2026-01-13

单调队列优化 DP

题目:LGP3089

设 d p i , j dp_{i,j} dpi,j 表示当前已经跳到了第 i i i 个位置,上一个位置是 j j j 的最大值, d p i , j = d p i − 1 , j − p i − 1 + p i dp_{i,j}=dp_{i-1,j}-p_{i-1}+p_i dpi,j=dpi−1,j−pi−1+pi, d p i − 1 , j dp_{i-1,j} dpi−1,j 定义在 x j − x k ≤ x i − 1 − x j x_j-x_k\le x_{i-1}-x_j xj−xk≤xi−1−xj 上, x i − 1 ≤ x i x_{i-1}\le x_i xi−1≤xi,所以,这里的 k k k 会更多,所以,确定一个最大转移的 k k k 即可。

所以说,这类题会给你冗余的时间让你去算这个窗口的长度 k k k,遇到了别慌!

2026-01-14

合法区间个数想分治

题目:AT_abc248_h

这个按照原题做,显然不太需要分治算法,但是,如果 k ≤ n k\le n k≤n,那么,我们就应该考虑分治了。因为分治的优势在于当前只计算跨中点的区间个数。

2026-01-15

平面矩形覆盖问题,可以考虑并查集

题目:LGP4737

这个题就很巧妙,因为对于一个覆盖了其他小矩形的大矩形而言,存在一些牛的数量的祖先关系,适用于并查集维护。

2026-01-19

偏移量+二分可以控制数量要求

题目:LGP2619

为了控制白边数量,我们增加一个偏移量,二分即可。

2026-01-20

区间元素个数,按照最后出现位置统计即可

题目:LGP1972

对于 n ≤ 1 × 10 5 n\le 1\times10^5 n≤1×105,一个莫队就能解决......

然后呢?和我 Trick 大标题里总结的一样,对于每个元素,只统计其最后出现的位置,对于已经插入的元素,记录一个 p r e pre pre 数组,动态单点修改,套一个树状数组,做完了。

2026-01-22

除以2下取整,考虑扔到堆里理解,分左右做

题目:LGP2606

这个题要求 p i > p ⌊ i / 2 ⌋ p_i>p_{\lfloor{i/2}\rfloor} pi>p⌊i/2⌋,转化为小根堆上,更好理解,同时启发了 DP 的转移,保证质数,存在组合数取模,套一个 Lucas 没了。

2026-01-23

复杂序列信息维护,考虑分块+并查集

题目:LGP8576

题目式子化简后,要维护阶乘、阶乘和、阶乘积以及逆元等神秘信息,普通线段树已经炸了,启动分块。但是,查询并不很容易,套一个并查集,将相同元素扔进一个集合,这样查询就比较方便了。

2026-01-28

每个元素都连续出现恰好一次,可以使用平方和来做

题目:LGP3792

这个第二个查询要求 查询区间 [l,r] 是否可以重排为值域上连续的一段 ,单纯的和性质不够强,如果使用平方和,那么会大不一样。或者,也可以使用 x i x^i xi( x x x 为固定整数),或异或和,或立方和......适当选择模数就可以了。但是我甚至没有取模,就稀里糊涂的过了,照理来说绝对不应该过啊......难道 2 31 2^{31} 231 这个自然溢出在这题是可行的?

2026-01-28

gcd相关

题目:LGP12579

这个把 gcd ⁡ \gcd gcd 的性质应用起来了。就是一个贪,相当于每次取 gcd ⁡ \gcd gcd 的数越多,就越小。应用一下,图论建模+二分+分治即可。

相关推荐
靴子学长25 分钟前
Decoder only 架构下 - KV cache 的理解
pytorch·深度学习·算法·大模型·kv
寒秋花开曾相惜42 分钟前
(学习笔记)3.8 指针运算(3.8.3 嵌套的数组& 3.8.4 定长数组)
java·开发语言·笔记·学习·算法
Гений.大天才42 分钟前
2026年计算机领域的年度主题与范式转移
算法
njidf1 小时前
C++与Qt图形开发
开发语言·c++·算法
ZoeJoy81 小时前
算法筑基(一):排序算法——从冒泡到快排,一文掌握最经典的排序算法
数据结构·算法·排序算法
qwehjk20081 小时前
代码动态生成技术
开发语言·c++·算法
承渊政道2 小时前
【优选算法】(实战体会位运算的逻辑思维)
数据结构·c++·笔记·学习·算法·leetcode·visual studio
Frostnova丶2 小时前
LeetCode 2573. 找出对应 LCP 矩阵的字符串
算法·leetcode·矩阵
承渊政道2 小时前
【优选算法】(实战推演模拟算法的蕴含深意)
数据结构·c++·笔记·学习·算法·leetcode·排序算法
林鸿群2 小时前
实现支持纳秒级精度的时间引擎(C++)
算法·定时引擎