随笔分类 - 树状数组/线段树上二分
摘要:洛谷传送门 LOJ 传送门 考虑第一问,设一个区间的价值 \(g(l, r)\) 为 \(f(l, r) - a_r + a_{l - 1}\),其中 \(a_i = \sum\limits_{j = 1}^i c_j\),\(f(l, r)\) 为 \([l, r]\) 中最大的 \(k\) 个
阅读全文
摘要:洛谷传送门 LOJ 传送门 考虑若原来的序列是不降的,那么进行 \(1\) 操作或 \(2\) 操作序列仍然不降。那么 \(1\) 操作直接线段树上二分然后打覆盖标记,\(2\) 操作直接打标记即可。 考虑一般情况,发现某个时刻所有被 \(1\) 操作影响过的 \(i\)(存在一次 \(1\) 操作
阅读全文
摘要:洛谷传送门 CF 传送门 小清新题。 首先容易发现每个合法的 \(b\) 唯一对应一个排列,大概就是每个时刻排列元素的相对顺序,然后插入到相应的位置。 但是这样太麻烦了。发现题目只要求求单点的 \(p\) 值。这应该有更简单的方法。 考虑令 \(b_i \gets i - b_i\) 表示 \(p_
阅读全文
摘要:洛谷传送门 AtCoder 传送门 貌似是第三道问号题?感觉前面这个转化不是人能想到的。。。 考虑维护 \(y\) 的差分序列。更进一步地,我们类比 slope trick,维护一个可重集,里面有 \(y_{i + 1} - y_i\) 个 \(i\)(为了方便我们让每次操作时 \(y_{m + 1
阅读全文
摘要:洛谷传送门 CF 传送门 从套娃过来的。 首先考虑如何方便地描述所有子区间的 \(\text{mex}\)。这是一个经典套路,考虑扫描线,扫右端点 \(R\),维护一些极长的段 \([l, r]\) 表示 \([l, R], [l + 1, R], \ldots, [r, R]\) 的 \(\tex
阅读全文
摘要:洛谷传送门 模拟赛时只写了 \(1, 3\) 事件在 \(2\) 后的分,赛后拓展一下这个做法就过了。一般。 首先考虑 \(O(nm)\) 暴力。注意到若一个极长连续段 \(l, l + 1, \ldots, r\) 被插了旗子,意味着 \(l - 1, l, \ldots, r, r + 1\)
阅读全文
摘要:洛谷传送门 CF 传送门 NOIP 模拟赛 T2。很厉害的题。 想象数轴上 \(a_1, a_2, \ldots, a_n\) 位置上各有一个洞,每个非负整数位置上有一个点。 每次操作相当于,对于每个点,如果它刚好位于一个洞,那么它会掉进去;否则设它的位置为 \(p\),位置在它前面的洞有 \(t\
阅读全文
摘要:洛谷传送门 被联考创出 shit 了。 考虑一种极限情况:每个点指向父亲。那么这种情况我们会顺着欧拉序完整地把整棵树都走一遍。 但是初始的时候不一定每个点都指向父亲。发现我们走过 \(O(n^2)\) 步就能到达上面的极限情况。比较显然,因为每次扩展至少使一个点从不指向父亲变成指向父亲(称一次扩展为
阅读全文
摘要:洛谷传送门 CF 传送门 区间显然不好处理,考虑转化成前缀和后缀。 设 \(f'_i\) 为 \(T[1 : i]\) 的单词出现次数,\(f_i\) 为 \(f'_i\) 的前缀和,\(g_i\) 为 \(T[1 : i]\) 后缀最长的单词编号。都可以通过建 \(s_i\) 正串的 ACAM 预
阅读全文
摘要:洛谷传送门 LOJ 传送门 为了方便,设 \(a_0 = a_{n + 1} = \infty\)。 考虑拎出来所有区间 \([l, r]\) 使得 \(\sum\limits_{i = l}^r a_i < \min(a_{l - 1}, a_{r + 1})\)。那么 \([l, r]\) 中的
阅读全文
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/AT_abc287_g "洛谷传送门") [AtCoder 传送门](https://atcoder.jp/contests/abc287/tasks/abc287_g "AtCoder 传送门") 线段树上二分入门题
阅读全文
摘要:[洛谷传送门](https://www.luogu.com.cn/problem/CF1837F "洛谷传送门") [CF 传送门](https://codeforces.com/problemset/problem/1837/F "CF 传送门") 这是一个常规 $\log^2$ 做法。 最大值最
阅读全文

浙公网安备 33010602011771号