上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 58 下一页
摘要: V.II.[国家集训]矩阵乘法 整体二分,然后套上二维BIT统计就行了。 需要注意的是整体二分时,要注意哪里是“编号”,哪里不是!(放在代码中就是哪里的东西外面要套上一层 p[]) 时间复杂度 \(O(m\log m\log^2n)\)。 代码: #include<bits/stdc++.h> us 阅读全文
posted @ 2021-04-06 10:54 Troverld 阅读(42) 评论(0) 推荐(0) 编辑
摘要: V.I.[POI2011]MET-Meteors 套上整体二分,然后用BIT统计区间里每个国家收到多少陨石就行了。 听说有人还有用线段树上二分之类奇怪的东西,但是真的没有必要。 时间复杂度 \(O(n\log^2n)\)。 代码: #include<bits/stdc++.h> using name 阅读全文
posted @ 2021-04-06 10:52 Troverld 阅读(31) 评论(0) 推荐(0) 编辑
摘要: IV.VI.寻找宝藏 又是四维偏序板子。只不过是打一遍再熟悉一下代码罢了。 代码: #include<bits/stdc++.h> using namespace std; const int mod=998244353; int n,m; typedef long long ll; struct 阅读全文
posted @ 2021-04-06 10:50 Troverld 阅读(121) 评论(0) 推荐(0) 编辑
摘要: IV.V.[DBOI2019]德丽莎世界第一可爱 事四维偏序模板 二维偏序我们用BIT,三维偏序我们用CDQ套BIT,四维偏序,可以CDQ套树套树CDQ套BIT。 什么意思? 我们排序排掉第一维。 然后,在第二维上CDQ:当我们要计算 \([l,mid]\) 对 \([mid+1,r]\) 的贡献时 阅读全文
posted @ 2021-04-06 10:48 Troverld 阅读(75) 评论(0) 推荐(0) 编辑
摘要: IV.IV.[Ynoi2016] 镜中的昆虫 没错,这里就是CDQ分治 \(O(n)\) 的优势所在了——本题似乎卡掉了空间复杂度为 \(O(n\log^2n)\) 的树套树。 但这不妨碍我继续说:树套树yyds 首先,这里有一个结论:长度为 \(n\) 的序列,修改 \(m\) 次,\(las\) 阅读全文
posted @ 2021-04-06 10:45 Troverld 阅读(88) 评论(0) 推荐(0) 编辑
摘要: IV.III.[国家集训队]数颜色 / 维护队列 虽然这里这题的写法是CDQ但是我还是要大声喊出:树套树yyds! 首先,众所周知地,我们可以对于每个位置记录其颜色上一次出现的地方,记作 \(las_i\),则我们需要知道的就是 \([l,r]\) 中 \(las_i<l\) 的总数。 众所周知地, 阅读全文
posted @ 2021-04-06 10:43 Troverld 阅读(53) 评论(0) 推荐(0) 编辑
摘要: IV.II.[HNOI2010]城市建设 实际上这题不算狭义上的CDQ分治(先计算左边,再计算左边对右边的贡献,最后计算右边),更像是线段树分治的变种,但是既然大家都认为这就是CDQ那就算是罢…… 考虑分治计算。当我们考虑一个区间 \([l,r]\) 时,我们会将所有边分为两类:区间 \([l,r] 阅读全文
posted @ 2021-04-06 10:41 Troverld 阅读(86) 评论(0) 推荐(0) 编辑
摘要: IV.I.[SDOI2011]拦截导弹 我当初为什么要用CDQ分治而不是树套树开这题…… 明显三维偏序。然后一个点的可能性就是前缀路径数乘以后缀路径数除以总路径数。 CDQ分治有一大坨的细节需要处理! 代码: #include<bits/stdc++.h> using namespace std; 阅读全文
posted @ 2021-04-06 10:39 Troverld 阅读(41) 评论(0) 推荐(0) 编辑
摘要: III.IV.[HDU3842][WF2011]Machine Works 我们设 \(f_i\) 表示第 \(i\) 台机器被购买时,所剩最多钱数。则 \(f_i=\max\limits_{d_j<d_i}\Big\{f_j+(d_i-d_j-1)g_j+r_j-p_i\Big\}\) 其可被拆作 阅读全文
posted @ 2021-04-06 10:37 Troverld 阅读(68) 评论(0) 推荐(0) 编辑
摘要: III.III.CF932F Escape Through Leaf 明显DP式很容易写出;然后观察发现其就是子树中一堆函数 \(y=kx+b\) 中对于某个 \(x\) 的 \(y\) 的最小值,于是线段树合并李超树就OK了。 需要注意的是,李超树因为每个节点都存了一条直线(相当于标记永久化),因 阅读全文
posted @ 2021-04-06 10:35 Troverld 阅读(88) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 58 下一页