摘要: 1 QOJ18242 直接 DP 是形如 \(f_{i,j}\) 表示考虑了 \(b_1\) 到 \(b_i\) 且 \(b_i=j\) 的序列个数,然而基本无法优化。 将 \(a\) 取后缀 \(\min\) 得到一个单调不降的序列。将值域按照 \([2^i,2^{i+1})\) 分 \(O(\l 阅读全文
posted @ 2026-06-30 16:19 HappyBobb 阅读(70) 评论(0) 推荐(0)
摘要: 1 QOJ5528 将 \(K_n\) 拆成 \(n-1\) 组完美匹配。方法是令 \(V=\{+\infty,0,1,\cdots,n-2\}\)。对于每个 \(i \in [0,n-2]\),令 \(E_i = \{(+\infty,i)\} \cup \{(i-j,i+j)\mid 1 \le 阅读全文
posted @ 2026-05-31 12:06 HappyBobb 阅读(172) 评论(0) 推荐(0)
摘要: 1 山东二轮省队集训 Day5 T1 UTPC2023 P。 考虑令 \(T=\{A_1,A_2,\cdots,A_m\}\),在从前往后考虑每个 + 的过程中,若其属于 \(T\) 则是好的,否则要求其比目前匹配掉的 \(T\) 中的剩下的最大值要大。 DP,\(f_{i,j,k,0/1}\) 表 阅读全文
posted @ 2026-05-01 17:52 HappyBobb 阅读(280) 评论(0) 推荐(1)
摘要: 1 P15940 即对于每个时间前缀求 \(x_{\min},y_{\min},x_{\max},y_{\max}\),使得 \(w_{x,y} \geq X\)。 四个信息对称,考虑如何求 \(x_{\min}\)。 三个维度分别是平面两维和时间轴一维,按照任意一个维度直接扫描线都不好处理,因为还 阅读全文
posted @ 2026-03-29 19:41 HappyBobb 阅读(276) 评论(1) 推荐(1)
摘要: 1 CF1824D 扫描线一下线段树维护历史和。 2 QOJ1178 如果不是环而是链大家都会做,若干区间两两有交不难说明这些区间整体交非空,枚举交点位置即可。 对于环,考虑将其视为一条链,将开头和结尾连在一起。每段弧对应序列一个区间或者一个前缀与后缀的并,我们分别称其为一类弧和二类弧。 注意到一类 阅读全文
posted @ 2026-03-01 18:48 HappyBobb 阅读(58) 评论(0) 推荐(0)
摘要: 应该总结一些题目中常用的手法和结论,想到什么写什么吧,能力有限。 通用 刻画问题结构时多手玩观察规律。 刻画问题结构时考虑观察结构的一般性。对于无法下手的问题应该从不同的角度刻画。 想题过程若涉及大量分类讨论应该在写代码前仔细思考。 找不到性质或者找到性质不会证明时对小情况跑暴力试试。 局部分析,整 阅读全文
posted @ 2026-02-20 20:24 HappyBobb 阅读(114) 评论(2) 推荐(2)
摘要: 1 P14945 原神怎么你了。 这个问题经典难做,值域比较小,启发我们向 bitset 角度思考。 对横轴猫树分治,求跨过中点询问答案时,对左右分别扫描线,只需要分别求中点左右两侧的区间或,然后或在一起即可。 直接用线段树维护,那么查询一次是 \(O(\dfrac{n\log n}{w})\) 的 阅读全文
posted @ 2026-02-03 18:27 HappyBobb 阅读(62) 评论(0) 推荐(0)
摘要: 1 离线动态图连通性 众所周知的做法是离线后对时间轴做线段树分治,需要使用可撤销并查集维护加边撤销,查询两点连通性,复杂度 \(O(n\log^2 n)\)。 事实上我们可以做到 \(O(n \log n)\)。考虑线段树分治结构。在线段树上每个点有一个集合 \(S \subseteq E\),我们 阅读全文
posted @ 2025-12-25 08:31 HappyBobb 阅读(87) 评论(0) 推荐(0)
摘要: 1 P14363 问题等价于给若干字符串二元组,\(q\) 次询问每次给两个字符串,问有多少二元组使得第一个是询问的第一个的后缀,第二个是询问的第二个的前缀。建 Trie 等价于查询两棵 Trie 上到根路径交,变成 DFN 序后随便维护。 不保证 \(|t_1|=|t_2|\),神经病。 2 P1 阅读全文
posted @ 2025-10-31 19:53 HappyBobb 阅读(107) 评论(0) 推荐(0)
摘要: 1 NFLS 模拟赛 T1 每个点处理一些信息,选好枚举哪个点就行。 2 NFLS 模拟赛 T2 首先,所有 \(x_i+y_i\) 奇偶性相同是必要条件。其次,其也是充分条件。 观察大样例可以看出其给的是 \(1,2,4,8,\cdots\),对这个东西构造即可。大概是你尝试归纳证明用 \(2^0 阅读全文
posted @ 2025-10-01 08:41 HappyBobb 阅读(148) 评论(3) 推荐(0)