欢迎光临 ~|

Laijinyi

园龄:1年7个月粉丝:2关注:2

10 2024 档案

采药 plus 题解
该文被密码保护。
1
0
0
P4690 镜中的昆虫 (动态区间颜色数) 题解
摘要:Statement 区间涂颜色 区间颜色数 Solution O(polysqrt) 略。 O(polylog) 颜色段均摊有两层含义: 随机数据下:任意时刻的颜色段个数期望 O(logn) 非随机数据下:每次推平时访问的颜色段个数均摊 \(O
32
0
0
线段树合并 笔记
摘要:主要是忘了复杂度证明,所以来记一记 int merge(int u, int v, int l, int r) { if (!u || !v) return u | v; if (l == r) return a[u].sum += a[v].sum, u; a[u].lc = merge(a[u]
6
0
0
错点解析
摘要:随时更新 柯朵莉树,Assign,要先 Split(r + 1) 再 Split(l) 而不是先 Split(l) 再 Split(r + 1) 解析 1 如果 l,r+1 在同一个颜色段内,你 Split(l) 再 Split(r + 1) 时 l 这个颜色段的指针已经被删除。
5
0
0
Gym 100543G Virus synthesis 题解
摘要:Solution 首先只考虑回文串的答案;我们重点考虑的是偶回文串 结论:对于偶回文串 u,从其最长的长度小于等于他的一半的回文后缀,或其父亲转移过来,一定是最优的 证明: 设 u 的一个回文子串为 v(不是父亲),你要让 vu 的转移最优 首先 v
5
0
0
火星商店问题 题解
摘要:Solution 线段树套 trie,秒了! O(nlog2n) Code #include <bits/stdc++.h> using namespace std; #define rep(i, j, k) for (int i = (j); i <= (k); ++i) #defi
9
0
0
P5416 = UOJ 198 时空旅行 题解
摘要:Statement 一棵树,每个节点上有一个集合,每个儿子集合由父亲集合增加一个点 (xi,ci) 或删除一个点得到。根节点集合为 {(0,0,0,c0)} 多次询问,每次问 u 点的集合内,min{(xix)2+ci} Solution 首先
7
0
0
平面最近点对 & 最小周长三角形 & 曼哈顿距离最近
摘要:Statement 求平面最近点对的距离,距离定义为欧几里德距离。 Solution 考虑按 x 排序,分治计算 先往左右递归,设得到的答案为 d,当前算跨过中点的答案,那么答案 d 的点对可以不用枚举 设中点为 mi[l..m],\(x_
105
0
0
P3215 括号修复 题解
摘要:Statement 维护一个括号序列,有以下操作: 区间覆盖 区间翻转 区间反转(左括号变右括号,右括号变左括号) 区间问最少改多少位能使括号序列合法,保证有解 Solution 单纯没想到答案怎么算。。。 首先一段括号序,如果消除中间的所有匹配,最终一定形如 ))))(((,这个信息是可合并的 设
10
0
0
P3250 网络 题解
摘要:Solution 单次二分:问“重要度 x 的所有操作,且 t 时间点还存在的所有操作中,是否有不经过这个点的” 整体二分:保持操作、询问按时间有序,即预先按时间排序,下传时保持有序; 对于一次 Solve,对于所有重要度 mid+1 的操作(加入、删除),考
8
0
0
P3527 MET-Meteors 题解
摘要:Solution 单次二分:二分时间,做这个时间前的所有操作,然后线性统计。 注意到可以整体二分,直接整体二分是 O(nlog2n)。 考虑扫描序列,用线段树维护每个时间段内该位置的增加值,差分一下可以实现。 将这棵线段树持久化一下,一个国家所有位置同时二分即可 \(O(n\log n
4
0
0
P4093 序列 题解
摘要:Statement 给出 n 个数的序列 {ai},接下来 m 秒中每一秒会有一个数发生变化,然后恢复。 问最长的子序列长度,使得任意时刻这个子序列不下降。n105 Solution 设 bii 最小能变成的数,ci
8
0
0
P3332 K大数查询 题解
摘要:Solution 整体二分板子题 vector 太好写了111 #include <bits/stdc++.h> using namespace std; #define rep(i, j, k) for (int i = (j); i <= (k); ++i) #define reo(i, j,
4
0
0
LOJ 6041 事情的相似度 题解
摘要:Statement 先把串 reverse,多次给 l,r,求 maxli<jr{LCP(i,j)}Solution sqrtlogsqrt:莫队 + 线段树 / 树状数组 / set,用 SA
4
0
0
LCT 优化 Dinic
摘要:我觉得这东西有必要记一下,因为光是看 PPT 很难自己写出代码……具体步骤相关啥都没写。 另外学这个东西也不是很必要…… Solution 我们需要一个维护最小值、最小值编号,支持区间加的 LCT。需要支持以下操作: find_root(u) link(u,v) \(cut(u,v
18
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起