随笔分类 -  杂项

摘要:既好写又快的 pbds 哈希表 例题:P11615 【模板】哈希表 - 洛谷。 不想手写哈希表怎么办? unordered_map unordered_map 不能自己传入哈希函数,很容易被卡。 gp_hash_table gp_hash_table 是探查法,cc_hash_table 是拉链法, 阅读全文
posted @ 2025-08-14 22:40 dengchengyu 阅读(71) 评论(0) 推荐(1)
摘要:确定性有限状态自动机 学习笔记 例题 abc418_g Binary Operation P12294 [THUPC 2025 决赛] 一个 01 串,n 次三目运算符,最后值为 1(加强版) 解决什么问题 有这样一类问题,给定一个含 01? 的串,? 可以变成 01 中的一个,现在你可以按一定规则 阅读全文
posted @ 2025-08-14 20:52 dengchengyu 阅读(13) 评论(0) 推荐(0)
摘要:基数排序 一种非比较的排序算法。我们把每个元素拆成 \(k\) 个关键字。然后有两种排序方式: MSD,从第 \(1\) 关键字到第 \(k\) 关键字依次排序。 LSD,从第 \(k\) 关键字到第 \(1\) 关键字一次排序。 这里对于两个元素 \(a,b\) 判断 \(a<b\) 的方法是,找 阅读全文
posted @ 2025-04-14 22:13 dengchengyu 阅读(20) 评论(0) 推荐(0)
摘要:线段树分治-学习笔记 阅前须知:本文给出了线段树分治的一道例题以及多道习题,同时给出了部分实现的代码,帮助学习线段树分治。 总述 线段树分治是一种离线算法,在于把修改挂在线段树的节点上,通过遍历线段树求出每个叶子节点的答案,以减小复杂度。 例题 P5787 二分图 题目大意:\(n\) 个点的图上, 阅读全文
posted @ 2025-01-10 21:49 dengchengyu 阅读(42) 评论(0) 推荐(0)
摘要:NOI Linux 2.0 竞赛环境食用指北 终端 使用 Ctrl+Alt+T 在当前登录用户的目录 ~ 中打开终端,也可以在文件夹中 右键 或 Shift+右键 在当前文件夹打开终端。 运行可执行文件需要加 ./,例如 ./<filename>。注意 Linux 中可执行文件是没有后缀名的。 mk 阅读全文
posted @ 2025-01-04 19:17 dengchengyu 阅读(203) 评论(0) 推荐(0)
摘要:HNOI2016 最小公倍数 题解 很神秘的分块优化暴力。 首先有一个暴力的想法,每次取出所有 \(a\le A,b\le B\) 的边,实际上就是判断 \(u,v\) 是否连通且连通块内是否有 \(a_{max}=A,b_{max}=B\)。这样是 \(O(mq)\) 的。 考虑对所有边按 \(a 阅读全文
posted @ 2024-12-25 22:18 dengchengyu 阅读(24) 评论(0) 推荐(0)
摘要:[复习] 种类并查集 种类并查集也可叫做扩展域并查集。 前言 自从两年多前刚学并查集时过了食物链后,就再也没有写过种类并查集。 今天回顾一下。 例题 1 食物链 P2024 [NOI2001] 食物链。 题目大意:有 \(n\) 个动物,每个动物属于 \(A,B,C\) 种中的一种,\(A\) 吃 阅读全文
posted @ 2024-11-26 21:19 dengchengyu 阅读(105) 评论(0) 推荐(0)
摘要:使用 <chrono> 测量程序用时 & 生成随机种子 用 <chrono> 测量程序执行时间 头文件 <chrono>,命名空间 std::chrono。 chrono 中提供了三种获取当前时钟的命名空间的成员函数: chrono::system_clock::now(),系统时间,可能回退,可用 阅读全文
posted @ 2024-11-26 15:15 dengchengyu 阅读(346) 评论(0) 推荐(1)
摘要:时间复杂度:主定理 求递归算法的复杂度: \[T(n)=aT(n/b)+f(n) \]其中 \[f(n)=O(n^d \log^{k} n) \]则 \[T(n)=\begin{cases} f(n) & d>\log_ba \\ O(n^d\log^{k+1} n) & d=\log_ba\\ O 阅读全文
posted @ 2024-11-14 16:40 dengchengyu 阅读(74) 评论(0) 推荐(0)
摘要:整体二分 本文通过介绍几道例题的解法,带你深入了解整体二分的精髓。 文末还有练习。 例题 大致按难度排序,其中,中间的三道题都是类似的。 P3527 [POI2011] MET-Meteors P3332 [ZJOI2013] K大数查询 P2617 Dynamic Rankings P1527 [ 阅读全文
posted @ 2024-10-11 22:38 dengchengyu 阅读(81) 评论(0) 推荐(0)
摘要:子集反演 & 高维前缀和 & sos dp 学习笔记 子集反演 设 \(g(S)\) 表示集合 \(S\) 的答案,\(f(S)\) 为 \(S\) 的子集的答案和。 根据定义: \[f(S)=\sum_{T\in S} g(T) \]子集反演就是: \[g(S)=\sum _{T\in S}(-1 阅读全文
posted @ 2024-09-25 22:24 dengchengyu 阅读(164) 评论(0) 推荐(1)
摘要:O(n)-O(1) 线性 RMQ 学习笔记 \(O(n)\) 预处理,\(O(1)\) 查询的 RMQ(区间最值)算法。 而我们正常 ST 表处理 RMQ 只能做到 \(O(n \log n)-O(1)\)。 用四毛子算法可以做到 \(O(n\log\log n)-O(1)\)。 四毛子算法:对原序 阅读全文
posted @ 2024-08-18 16:56 dengchengyu 阅读(533) 评论(0) 推荐(1)
摘要:wqs二分 参考资料 【学习笔记】WQS二分详解及常见理解误区解释 -ikrvxt -CSDN wqs二分 学习笔记 -Leap_Frog -Luogu wqs二分详解 -Hypoc_ -CSDN 前言 2024.08.13 模拟赛遇到恰好选 \(m\) 个的限制的反悔贪心做模拟费用流的题,然而不会 阅读全文
posted @ 2024-08-13 22:10 dengchengyu 阅读(82) 评论(0) 推荐(0)