上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 51 下一页
摘要: 直接做是难的,发现这个东西似乎可以矩阵优化。 可以发现 [a+bb]=[ab]×[1011]\begin{bmatrix} a+b&b \end{bmatrix} = \begin{bmatrix} a & b \end{bmatrix} \times \begin{bmatrix} 1 & 0 \ 阅读全文
posted @ 2023-05-16 18:50 HappyBobb 阅读(11) 评论(0) 推荐(0)
摘要: A. 易得。 #include <iostream> #include <cstring> #include <algorithm> #include <cmath> #include <cstdio> #include <set> #include <map> #include <unordere 阅读全文
posted @ 2023-05-13 11:07 HappyBobb 阅读(23) 评论(0) 推荐(0)
摘要: 自定义结构体维护平衡树即可,并不需要哈希。 我们对于每个结构体维护名字、分数和插入时的编号。先按分数,后按插入编号重载运算符即可。 根据题意,我们要支持插入,求排名,按照排名求值以及删除操作。因为如果一个人的分数被更新,我们要在平衡树中修改它,即先删除后插入。 由于需要删除操作,所以需要写前驱操作, 阅读全文
posted @ 2023-05-03 21:06 HappyBobb 阅读(26) 评论(0) 推荐(0)
摘要: 容易发现对于插入 xxx,如果我们找到了 xxx 的前驱 ppp 和后继 nnn,那么 xxx 一定位于 ppp 或 nnn 的某个儿子上。 仔细观察,发现 xxx 会位于 ppp 和 nnn 中深度较大的一个的儿子上。 于是我们依次插入每个数,查前驱后继,并且更新深度。 然后可以直接用 set 做 阅读全文
posted @ 2023-05-02 21:18 HappyBobb 阅读(20) 评论(0) 推荐(0)
摘要: 可以用 SAM 来做,只不过空间常数稍大。 考虑建出后缀自动机后,用 fafafa 树维护 Endpos\text{Endpos}Endpos 集合大小即可,非常经典的用 SAM 做的问题。 #include <bits/stdc++.h> using namespace std; const in 阅读全文
posted @ 2023-04-22 13:31 HappyBobb 阅读(16) 评论(0) 推荐(0)
摘要: 先考虑对图黑白染色,并且设 SSS 和 TTT 分别为源点和汇点。容易发现,四联通的两个点,肯定是一个黑一个白。 我们对于所有黑点 (i,j)(i,j)(i,j),我们令 u=(i−1)×m+ju=(i-1) \times m + ju=(i−1)×m+j,从 SSS 到 uuu 连一条容量为 ai 阅读全文
posted @ 2023-04-20 19:38 HappyBobb 阅读(20) 评论(0) 推荐(0)
摘要: 先考虑能否逃出。 我们不妨设删去的边的两点编号为 u,vu,vu,v,其中 uuu 是 vvv 的父亲。 容易发现当且仅当 RRR 在 vvv 的子树中时无法逃出,即 RRR 和 vvv 的 LCA 为 vvv。可以通过树剖等处理。 我们假设不能逃出,那么需要考虑能否到商店。因为已经无法逃出,那么 阅读全文
posted @ 2023-04-10 18:46 HappyBobb 阅读(19) 评论(0) 推荐(0)
摘要: 考虑建出圆方树。 对于任意两个点,其路径中必须要经过的点就是这两个点对应的圆方树中点的路径之间圆点数量。也就是割点数量。 于是 LCA 处理即可。 #include <iostream> #include <cstdio> #include <algorithm> #include <cmath> 阅读全文
posted @ 2023-04-05 16:42 HappyBobb 阅读(25) 评论(0) 推荐(0)
摘要: 第 300300300 篇题解当然要写个有意思的题。 lxl 给出的标答是根号分治,不过也有序列分块的做法,只不过非常需要卡常。 我们先对序列分块。接着我们考虑怎么处理询问。 显然询问的结果有两种: 在块内的答案。这种可以通过预处理 disi,j,kdis_{i,j,k}disi,j,k​ 表示第 阅读全文
posted @ 2023-03-23 07:36 HappyBobb 阅读(21) 评论(0) 推荐(0)
摘要: 什么板子能评 230023002300。 建完 SAM,对于每一个点,其表示字符串个数为 lenu−lenfaulen_u - len_{fa_u}lenu​−lenfau​​,出现次数可以通过 link⁡\operatorname{link}link 边,即后缀链接线性求出,也是套路了。 然后算贡 阅读全文
posted @ 2023-03-08 20:44 HappyBobb 阅读(22) 评论(0) 推荐(0)
上一页 1 ··· 16 17 18 19 20 21 22 23 24 ··· 51 下一页