一些套路的备忘笔记
杂项
-
baka's trick:尺取法可以不用删除做到线性,前提是合并两个连续段答案的复杂度比较低。
-
指定某两个结构的元素不交,可以考虑随机黑白染色,当结构比较简单,元素个数较小时正确率有保证。
-
对于一些限制很奇怪的选物品题目可以尝试定义一些
变量转成规划问题,可以用无穷大的代价描述限制。 -
树上连通块当然是点分治钦定一个根最好做。点分治不止可以用于路径。
-
xorshift 32 参数: 13 17 5;xorshift 64 参数:13 7 17
-
区间没有相交只有包含排除,有时候暗示着单调栈。
-
每次随机一条边,如果加入不产生环就加入,用这样的方式随机产生的树的深度是
,且深度和高度的乘积之和是 。
组合计数类
-
生成一个结构,每次在原先的基础上进行一些转化得到新的结构。当你发现依次递推非常困难的时候可以考虑从开头插入,考虑第一步对后面生成的结构的影响。这点不只适用于组合计数。
-
对于
的限制,在任何解中,本质不同的 的数目是 。 -
一道题目涉及到异或和的时候想想Kummer定理,
,这是Lucas定理的一个直接推论。 -
整除可以单位根反演。
-
神秘容斥:
数论类
-
处理取模:
。 -
处理
的幂: ,从而把 从指数上拿下来。 -
处理求和式:交换求和顺序,如果不能交换,考虑凭空求和:
。 -
处理有关上下取整的限制:
, ,反之亦然,可以这样把取整符号里的除法、根号等去掉然后再把取整加回去。 -
考虑凭空莫反转化成 ; 考虑枚举 ,使得 ,然后变成 ,用凭空莫反。 -
某个数与另一个数互质,可以考虑转化为模另一个数的所有质因子都不为0。当然也可以考虑莫反,这两者其实差不多。
结论类
-
考虑一个序列a,满足它的和为1,则它的所有循环同构串互不相同,且其中恰好有一个满足其所有部分和为正。(Raney引理,出自《混凝土数学》)
-
两维值域在
的凸包大小是 。 -
总共有
个点的点集,凸包大小是 级别。事实上这是基于随机排列它的前缀最大值序列值个数期望是 。
构造类
- 减少步数可以考虑
求最小步数然后反过来构造。
多项式
- 求
模 的逆元,可以构造 ,求它在 意义下的根,其中 在 中。那么可以基于牛顿迭代做到 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现