数据结构(线段树,平衡树,主席树,LCT,树套树等)
文章平均质量分 87
来练习你的码力吧(
_ducati
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CF700E Cool Slogans——后缀自动机,神仙结论与线段树合并优化 dp
CF700E 题解原创 2022-04-05 11:27:29 · 361 阅读 · 0 评论 -
【NOI Online 2022 提高组 C】【洛谷 P8252 】如何正确地排序题解
Description 传送门 Solution 首先考虑将 min,max\min,\maxmin,max 给拆开。二者同理,我们不妨仅考虑求前者。 对于 m=2m=2m=2 的情况可以随便做。下面我们先考虑 m=3m=3m=3 的情况。 首先,明确所要求即 ∑1≤i,j≤mmax1≤k≤3{ak,i+ak,j}\sum_{1 \le i,j \le m} \max_{1 \le k \le 3}\{a_{k,i}+a_{k,j}\}1≤i,j≤m∑1≤k≤3max{ak,i+ak,j} 不原创 2022-03-26 18:31:14 · 1046 阅读 · 0 评论 -
Educational Codeforces Round 119 (Rated for Div. 2) EFG 题解
CF1620 题解原创 2021-12-19 18:18:10 · 649 阅读 · 0 评论 -
CF1609 部分题解
赛时做出了 ABCDE,没有做出 FGH;目前已补掉了 F,尚未补掉 G,H。 A 令 bib_ibi 为 aia_iai 所含质因子 222 的个数,ci=ai2bic_i=\frac {a_i} {2^{b_i}}ci=2biai。不难发现,调整过程等价于将一共的 S=∑i=1nbiS=\sum_{i=1}^n b_iS=∑i=1nbi 个质因子 222 重新分配给所有的 ccc,使得所有值之和最大。 根据贪心策略,将 SSS 全部分配给最大的 ccc 即可。 B 不难发现,最少删除次数原创 2021-12-05 15:51:07 · 566 阅读 · 0 评论 -
P7889 「MCOI-06」Eert Tuc Knil 题解
Description 传送门 Solution 算法一 对于每次询问跑一遍 dp\text{dp}dp 计算答案即可。期望得分 555 分。 void dfs(int now,int fath){ for (int i=head[now];i;i=e[i].nxt){ int y=e[i].to; if (y==fath) dfs(y,now); dp[now]+=max(dp[y],0); } dp[now]+=a[now]; } 算法二 为方便叙述,令所有节点的点权增量为 △\t原创 2021-10-23 09:06:13 · 256 阅读 · 0 评论 -
P7838 「Wdoi-3」夜雀 treating 题解
Description 传送门 Solution Part 1: 题意抽象 结合对顶栈的思想,我们可以将题意抽象为对两个栈的操作。 即,我们将 1,2,3,⋯ ,n1,2,3,\cdots,n1,2,3,⋯,n 依次放到 A 栈中,2n+1,2n,⋯ ,n+22n+1,2n,\cdots,n+22n+1,2n,⋯,n+2 依次放到 B 栈中。那么,辉夜所做的事情就是: 先选择 an+1a_{n+1}an+1,然后执行若干次下述操作: ⌈\lceil⌈ 删除一个栈中的某个元素并选另一个栈的栈顶元素 ⌋\rf原创 2021-08-22 21:06:52 · 211 阅读 · 0 评论 -
带权并查集 详解
简介 带权并查集与普通并查集的区别在于,其每条边/每个点都有权值。因此,我们需要额外用一个数组来维护每个点 xxx 到其当前祖先 faxfa_xfax 的权值和,并在路径压缩的时候维护。 直接说可能较难理解,于是下面是一道例题。 P1169 Description 传送门 Solution 考虑对于每个点 xxx,维护其到其祖先 faxfa_xfax 的距离 depxdep_xdepx,并对于每个并查集的根维护连通块大小 sizsizsiz。 对于一个 M 操作,令涉及到的战舰分别为 x,yx,yx,原创 2021-08-13 11:48:52 · 2643 阅读 · 0 评论 -
Good Bye 2019 题解
Description 给定一个长度为 nnn 的 010101 序列 aaa,求其有多少段区间 [l,r][l,r][l,r] 使得 r−l+1r-l+1r−l+1 为 [l,r][l,r][l,r] 的和的倍数。 1≤n≤2×1051 \le n \le 2 \times 10^51≤n≤2×105,时限 8s\texttt{8s}8s。 Solution 令 prei=∑j=1iajpre_i=\sum_{j=1}^i a_jprei=∑j=1iaj,则 r−l+1r-l+1r−l+1 为 [l原创 2021-08-11 22:05:51 · 247 阅读 · 0 评论 -
P3452 [POI2007]BIU-Offices 题解
Description 给定一张 nnn 个点 mmm 条边的图,你需要求出其补图的连通块个数以及各个连通块的大小。 原数据范围: 1≤n≤105,1≤m≤2×1061 \le n \le 10^5,1 \le m \le 2 \times 10^61≤n≤105,1≤m≤2×106 加强版数据范围: 1≤n,m≤5×1061 \le n,m \le 5 \times 10^61≤n,m≤5×106 Solution 补图的边数是 n2n^2n2 级别的,若我们建出整个补图则无法通过。 注意到,我们只需要连原创 2021-07-20 19:15:11 · 265 阅读 · 0 评论 -
CF1540D Inverse Inversions 题解
Description 传送门 Solution 算法一 考虑一个 O(nq)O(nq)O(nq) 的算法。 我们动态地维护序列 aaa,其中 aia_iai 表示 pip_ipi 是 [1,i][1,i][1,i] 中第几小的。显然,有 ai=i−bia_i=i-b_iai=i−bi。 对于一次修改,直接 O(1)O(1)O(1) 地更新 aia_iai。 对于一次查询,令 ans=aians=a_ians=ai,并从 i+1i+1i+1 一直扫描到 nnn。若当前的 ansansans 满足原创 2021-06-27 11:22:20 · 313 阅读 · 0 评论 -
CF121E Lucky Array 题解
Description 传送门 Solution 算法一 注意到 [1,104][1,10^4][1,104] 中幸运数字只有 303030 个左右——对于一次询问,枚举幸运数字,计算出它的出现次数并求和。 注意到这是一个形如“区间修改,区间查询某种值出现次数”的题,可以用树套树维护。 总复杂度 O(30nlog2n)O(30 n \log^2 n)O(30nlog2n),常数极大,显然无法通过。 算法二 令 fif_ifi 表示,当前 aia_iai 到离它最近的一个幸运数字的距离。 对于一次修改,原创 2021-06-15 21:56:59 · 240 阅读 · 0 评论 -
Atcoder Regular Contest 122 D 题解
Description 传送门 Solution Lemma 若答案不超过 vvv,当且仅当可以将 aaa 中的数两两配对,使得每一个配对 (x,y)(x,y)(x,y) 均满足 x⊕y=vx \oplus y = vx⊕y=v。 Prove 假设已经完成了配对,且 nnn 个配对分别为 (ax1,ay1)(ax2,ay2),⋯ ,(axn,ayn)(a_{x_1},a_{y_1})(a_{x_2},a_{y_2}),\cdots,(a_{x_n},a_{y_n})(ax1,ay1)(ax2,a原创 2021-06-14 07:22:44 · 273 阅读 · 1 评论 -
CF1523G 题解
Description 传送门 Solution Lemma 令 cnticnt_icnti 表示,当 x=ix=ix=i 时能够租借到房子的人的个数。 那么必定有 ∑i=1ncnti=O(nlnn)\sum_{i=1}^n cnt_i=O(n \ln n)i=1∑ncnti=O(nlnn) Prove 不难发现,当 x=ix=ix=i 时,满足 ri−li+1≥xr_i-l_i+1 \ge xri−li+1≥x 的 iii 个数只有 O(nx)O(\frac n x)O(xn) 个。 若这些原创 2021-06-13 19:11:38 · 175 阅读 · 0 评论 -
6.5. 提高组模拟赛 题解
Solution A 对于第 xxx 轮,我们将所有满足 i+j≡x(modn−1)i+j \equiv x \pmod {n-1}i+j≡x(modn−1) 的 (i,j)(i,j)(i,j) 配对。注意这里 i,ji,ji,j 的下标均从 000 开始。 但是这样会导致一些数无法配对,例如当 n=6,x=2n=6,x=2n=6,x=2 时,000 已经和 222 配对了,那么 555 就无法和 222 配对了。同时,111 无法与它自己配对,所以最终会剩下 5,15,15,1 未配对。 由于每一轮中会有原创 2021-06-05 20:39:15 · 224 阅读 · 2 评论
分享