Loading

上一页 1 2 3 4 5 6 ··· 8 下一页
摘要: 1. 算法简介 树链剖分为将树分割成若干条链,维护树上信息的思想。通常将其分为链后能用数据结构维护。 树链剖分分为重链剖分,长链剖分,实链剖分。通常重链剖分最常用,本文主要介绍重链剖分。 重链剖分可将树划分为一个个长度不超过 \(O(\log n)\) 的链,并且保证每条链内的 \(dfs\) 序是 阅读全文
posted @ 2024-10-21 16:43 Daniel_yzy 阅读(68) 评论(0) 推荐(0)
摘要: 1. 算法简介 李超线段树是用来维护一次函数的线段树,可以支持插入线段(一次函数),查询直线 \(x=k\) 的与区间内线段交点纵坐标的最值等操作。 考虑如何使用线段树维护线段。 可以利用标记永久化的思想,对于线段树内每一个节点存储所有在当前区间 \([l,r]\) 中,\(f(mid)\) 最大/ 阅读全文
posted @ 2024-10-19 15:36 Daniel_yzy 阅读(274) 评论(0) 推荐(0)
摘要: 传送门 以此纪念我场切的 dp。 这种计数的类型一看就很 dp 的样子。考场上一开始设的 dp 状态是 \(dp_{i,j,k_1,k_2,0/1}\) 表示将前 \(i\)个数分为 \(j\) 段,放了 \(k_1\) 个偶数,\(k_2\) 个奇数,当前段为偶数段或奇数段的方案数。考虑如何转移, 阅读全文
posted @ 2024-10-18 16:58 Daniel_yzy 阅读(46) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2024-10-18 15:15 Daniel_yzy 阅读(0) 评论(0) 推荐(0)
摘要: 传送门 也算是一个有关于异或的小 trick 吧,简单记录一下。 可以维护原序列的前缀异或和 \(sum\),于是原题答案贡献变为 \(\sum\limits_{i=1}^n \sum\limits_{j=i}^n sum_j \oplus sum_{i-1}\)。变形一下为 \(\sum\limi 阅读全文
posted @ 2024-10-14 22:31 Daniel_yzy 阅读(41) 评论(0) 推荐(0)
摘要: 1. 算法简介 先来看一个很现实的问题: 就拿 [luogu]P3372【模板】线段树 1 这道题为例。 按常规做法,应该是用普通线段树 + \(lazytag\) 即可,但这样做代码较长,达到了 \(118\) 行。 而如果用树状数组去做,只用 \(63\) 行就能搞定,用时更短,代码也很好理解。 阅读全文
posted @ 2024-10-13 21:18 Daniel_yzy 阅读(21) 评论(0) 推荐(0)
摘要: 1. 算法简介 莫队算法有很多种:普通莫队,带修莫队,回滚莫队,树上莫队,二维莫队,莫队二次离线。 莫队算法主要用于解决支持快速插入,删除贡献的区间优化问题。 具体的,对于要求解贡献的区间 \([l,r]\) 来说,我们可以把以前求解过的区间 \([L,R]\) 的贡献保留下来,并通过移动 \(L, 阅读全文
posted @ 2024-10-13 20:18 Daniel_yzy 阅读(429) 评论(0) 推荐(3)
该文被密码保护。 阅读全文
posted @ 2024-10-11 13:22 Daniel_yzy 阅读(2) 评论(0) 推荐(0)
摘要: A B C D E F G H I 概率 dp。 设 \(dp_{i,j}\) 表示前 \(i\) 个硬币中有 \(j\) 个正面的概率。转移显然: \(dp_{i,j}=dp_{i-1,j-1}\times p_i+dp_{i-1,j}\times (1-p_i)\) 当 \(j=0\) 时,前 阅读全文
posted @ 2024-10-10 15:25 Daniel_yzy 阅读(110) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2024-10-10 13:19 Daniel_yzy 阅读(0) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 ··· 8 下一页