摘要: dfs 序的应用 很显然的就不说了,分析加法对求的东西的贡献,因为区间操作基本只能对子树,子树的 dfs 序连续 把路径加路径查用差分转换为到根的路径,默认维护路径的都是维护到根的 路径加,单点查询:考虑某个点只有在从根出发的路径的路径终点在子树内时才会被加,因此转化为 dfs 序序列上单点加,子树 阅读全文
posted @ 2024-02-15 10:30 KellyWLJ 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 概率和期望 期望 常见技巧与知识 如果当前步数通往下一步时,有 \(p\) 的概率原地打转,则走到下一步的期望步数为 \(\frac{1}{1-p}\) 如果在进行某个操作时达到要求则停止,求期望步数,则可设达到要求后不停止,但不耗步数,保持问题的对称性 求步数的期望:\(ans=E[\text{步 阅读全文
posted @ 2024-02-14 22:26 KellyWLJ 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 高维前缀和(SOS DP) 通常求二维前缀和,用容斥来求 但其实,完全可以先做一遍行的前缀和,再做一遍列的前缀和 拓展到 \(k\) 维也是如此,可以在 \(O(nk)\) 的复杂度求前缀和 但怎么和 DP 扯上关系? 可以把第 \(i\) 维当作阶段,每一维的具体信息是状态 先枚举阶段,表示当前固 阅读全文
posted @ 2024-02-14 22:24 KellyWLJ 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 思路:按区间的 \(len\) 从小到大 DP,枚举左端点,算出右端点,再枚举中间的分界点转移 有可能是向左右两端各扩展 \(1\) 步 还有时要记录在左/右端点,分开转移 把问题划分为区间长度更短的最优子结构 注意 \(len=1\) 时初始化及边界 P4342 [IOI1998]Polygon 阅读全文
posted @ 2024-02-14 22:23 KellyWLJ 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 以 P5785 [SDOI2012]任务安排 为例 朴素方程 其实也没那么简单,第一眼想法是设 \(f(i,k)\) 表示以 \(i\) 为结尾,共分了 \(k\) 段的总方案数 \[f(i,k)=\min_{j=0}^{i-1} f(j,k-1)+(sumc_i-sumc_j)\cdot( sum 阅读全文
posted @ 2024-02-14 22:21 KellyWLJ 阅读(6) 评论(0) 推荐(0) 编辑
摘要: slope trick 对于一类 DP 问题,DP 状态是二维的 \(f_{i,j}\),且 \(f_i\) 可以看作一个关于 \(j\) 的线性的连续凸分段函数 转移时可以直接维护这个函数而优化复杂度 维护操作 以下凸函数为例 我们维护第一段函数的斜率 \(k\),用数据结构维护出斜率每变化 \( 阅读全文
posted @ 2024-02-14 22:19 KellyWLJ 阅读(24) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2024-02-14 22:14 KellyWLJ 阅读(0) 评论(0) 推荐(0) 编辑
摘要: CF 乱做笔记 阅读全文
posted @ 2024-02-14 22:14 KellyWLJ 阅读(1) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2024-02-14 22:13 KellyWLJ 阅读(4) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2024-02-14 22:12 KellyWLJ 阅读(1) 评论(0) 推荐(0) 编辑