随笔分类 -  树状数组/线段树

摘要:洛谷传送门 LOJ 传送门 考虑第一问,设一个区间的价值 g(l,r)f(l,r)ar+al1,其中 ai=j=1icjf(l,r)[l,r] 中最大的 k阅读全文
posted @ 2024-03-30 14:59 zltzlt 阅读(48) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 LOJ 传送门 考虑若原来的序列是不降的,那么进行 1 操作或 2 操作序列仍然不降。那么 1 操作直接线段树上二分然后打覆盖标记,2 操作直接打标记即可。 考虑一般情况,发现某个时刻所有被 1 操作影响过的 i(存在一次 1 操作 阅读全文
posted @ 2024-03-13 22:39 zltzlt 阅读(43) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 小清新题。 首先容易发现每个合法的 b 唯一对应一个排列,大概就是每个时刻排列元素的相对顺序,然后插入到相应的位置。 但是这样太麻烦了。发现题目只要求求单点的 p 值。这应该有更简单的方法。 考虑令 biibi 表示 \(p_ 阅读全文
posted @ 2024-03-05 12:52 zltzlt 阅读(10) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 和 CF1004F Sonya and Bitwise OR 很像。 考虑一次询问怎么做。考虑分治,每次只计算左端点在 [l,mid],右端点在 [mid+1,r] 的区间的贡献。对于每个 i[l,mid],维护最小的 \(j \ 阅读全文
posted @ 2024-03-01 20:07 zltzlt 阅读(34) 评论(0) 推荐(1) 编辑
摘要:洛谷传送门 CF 传送门 为什么我场上被卡常了。 转化题意,将 a,b 差分,答案为在 a,b 选出相同长度的不含 0 的子段方案数。 设 a 选出长度为 i 的不含 0 的子段方案数为 xib 选出长度为 i 的不含 阅读全文
posted @ 2024-02-13 19:16 zltzlt 阅读(19) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 若一个结点 [li,ri) 已知就连边 (li,ri),那么子集满足条件当且仅当每对 (Li,Ri) 都连通。 考虑在树形结构上 dp。发现若 l,r 不连通,设 l 所在连通块点编号最大值为 i,那么 r 所在 阅读全文
posted @ 2024-02-13 18:48 zltzlt 阅读(53) 评论(0) 推荐(1) 编辑
摘要:洛谷传送门 CF 传送门 不知道为什么好像大家在这题上花了挺久的。 发现对于一对相邻的港口 (xi,xi+1)x(xi,xi+1) 的花费是 yi(xi+1x)。拆开得 \(y_i x_{i + 1} - y_i x 阅读全文
posted @ 2024-01-28 11:06 zltzlt 阅读(49) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 考虑扫描线,扫到 i 时,设包含 i 的区间的最小左端点为 l。设 x=ai。 若 [l,i] 之间存在 2x,那么就必须要修改。考虑序列此时的形式形如: \[[1, \ldots, a_l, \ 阅读全文
posted @ 2024-01-23 18:55 zltzlt 阅读(10) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 我独立做出一道 *3000? 考虑对于单次询问,除了 O(nm) 的 dp,有没有什么方法能快速算出答案。发现若 ai+1ai<bj+1bjii+1,否则 \(j \gets j + 1 阅读全文
posted @ 2024-01-22 14:51 zltzlt 阅读(7) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 看到 max,min 考虑单调栈。枚举右端点,计算有多少个符合条件的左端点。 单调栈维护的是对于每个右端点,以每个点为左端点的后缀 max,min 形成的极长的段。先枚举 popcount=k,然后如果一个段的 \(\m 阅读全文
posted @ 2024-01-22 12:15 zltzlt 阅读(10) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 AtCoder 传送门 赛后调了 40min,哈哈。 首先先把 a,b 排序。 考虑先枚举 Alice 选的数 ai,然后若 j,ki,(ai,bj,ak) 能组成三角形,Alice 就赢了。 考虑简化条 阅读全文
posted @ 2024-01-22 08:22 zltzlt 阅读(63) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 LOJ 传送门 dp 好题。 首先有一个显然的状态,设 fi,x,y 为第 i 列上下两格的颜色分别为 x,y 的方案数。但是这样做时间复杂度至少为 O(nm2),无法接受。 注意到全 0 列的转移是重复的。我们可以试着只在两个相邻非 阅读全文
posted @ 2024-01-12 22:35 zltzlt 阅读(23) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 考虑构造一个新串 t,只保留原串 si1=si 的字符 si。设 aiti 在原串的位置。 那么新串上我们有两种操作: i,删除 ti(相当于删除原串中的 \([a_i, 阅读全文
posted @ 2024-01-10 16:11 zltzlt 阅读(28) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 区间本质不同子串个数。 考虑类比区间数颜色。扫描线扫询问的 r=i,然后对于一个 i 的后缀 S[j:i],我们把它上一次出现时的左端点位置 1,现在的左端点位置(即 j+1。那么查询就是 [l,r] 的区间和。 考虑 阅读全文
posted @ 2024-01-10 08:07 zltzlt 阅读(9) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 题目看着感觉很像最大流,不妨建模,Si,容量为 aiiT,容量为 biii+1,容量为 ci。答案是这个图的最大流。 考虑最大流转最小割。观察到 Si 和 \(i 阅读全文
posted @ 2024-01-09 21:17 zltzlt 阅读(14) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 QOJ 传送门 考虑操作了若干次,所有点一定分布在一个自左上到右下的阶梯上或者在这个阶梯的右(上)侧。此处借用 H_W_Y 的一张图: 考虑如何计算答案。对于一次询问 (X,Y),如果它在阶梯左下方不用管它,否则考虑容斥,答案即为 xX,yY 的点 阅读全文
posted @ 2024-01-02 22:15 zltzlt 阅读(22) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 转化一下题意,变成求 x 在只经过编号 [l,r] 的点,能走到多少种颜色。 考虑建出点分树。一个结论是原树上的一个连通块,一定存在一个点,使得它在点分树上的子树完全包含这个连通块的所有点。证明考虑点分治的过程,一个连通块如果没被其中一个点剖开就一定在同一个子树 阅读全文
posted @ 2023-12-29 22:01 zltzlt 阅读(11) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 类比 P9062 [Ynoi2002] Adaptive Hsearch&Lsearch 处理区间最近点对的思路,尝试只保留可能有贡献的点对。 处理树上路径容易想到点分治。设点 u 到分治中心的距离为 au。我们有 \(\text{dis}(u, v) \le a_u 阅读全文
posted @ 2023-12-28 18:49 zltzlt 阅读(19) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 AtCoder 传送门 貌似是第三道问号题?感觉前面这个转化不是人能想到的。。。 考虑维护 y 的差分序列。更进一步地,我们类比 slope trick,维护一个可重集,里面有 yi+1yii(为了方便我们让每次操作时 \(y_{m + 1 阅读全文
posted @ 2023-12-27 18:02 zltzlt 阅读(15) 评论(0) 推荐(0) 编辑
摘要:洛谷传送门 CF 传送门 从套娃过来的。 首先考虑如何方便地描述所有子区间的 mex。这是一个经典套路,考虑扫描线,扫右端点 R,维护一些极长的段 [l,r] 表示 [l,R],[l+1,R],,[r,R] 的 \(\tex 阅读全文
posted @ 2023-12-20 13:01 zltzlt 阅读(24) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示