11 2023 档案
摘要:膜拜 szc 大佬。 原链接。 题单+代码 哈希 普通哈希不讲了,讲讲树哈希。 对于判断一对同构树,要考虑相同结构的儿子在两类树的不同位置。 此时有两种方法,一种是正常的按序哈希,我们很好想到在哈希时对儿子节点的哈希值进行排序,规定一个顺序塞进去。 另一种方法则是不使用多项式哈希,对所有哈希值在不乘
阅读全文
摘要:膜拜 zzh 大神。 原链接。 筛质数 埃氏筛 较为常用 线性筛 可用来求一个数的最小的因子 题:NOIP2021报数 乘法逆元 求逆元的三种方法 模数是质数时:费马小定理 较为好写 不是质数时:扩展欧几里得 转化为 的形式 线性求逆元 公式:$ inv_i=\left \lfl
阅读全文
摘要:膜拜 lmc 大神。 原链接。 树的直径 直径:树上任意两节点之间最长的简单路径 求法有两遍 dfs 和 dp 等。 直径在某些题目中拥有极好的性质,例如直径上的某一点到其他点的最大值最小,即树的“中心”。 通常我们可以通过两次 dfs 将直径单独取出,将其子树的价值压到直径的对应点上,以此进行 d
阅读全文
摘要:膜拜 hhj 大佬。 分块 对于分块的数据结构,往往是用来解决其它线性数据结构以及树形数据结构难以解决的问题,由此,分块也被冠以“终极数据结构”的称号。 1.块状数组 块状数组,即把一个数组分为几个块,块内信息整体保存,若查询时遇到两边不完整的块直接暴力查询,块的大小通常为 \(O(\sqrt{n}
阅读全文
摘要:洛谷。 题面 初始状态为全是 ,将某一为变化的前提是当前节点的前缀(不包括当前节点)是 串的一个后缀,每次变化需要 的代价。问最后要使所有都为 的最小代价。 分析 很有意思的一道题,感觉玩起来跟喵了个喵一样上头。 首先,我们肯定是要先让 这个
阅读全文
摘要:洛谷。 题意 应该好理解的。 分析 我们的所有雪球在同一时间之间的距离都是相同的,因此一段雪,要么是它左侧的第一个所取,要么右侧第一个所取,要么不被取,并且,我们每一个雪球所占有的雪是连续的一段。 我们令 表示第 步前所能走的最左点, 表示第 步
阅读全文
摘要:洛谷。 题意 显然。 分析 首先考虑到分治,那么问题就在于如何维护经过某个结点的方案数。 利用从中间结点向两端的前缀后缀最大值,接下来我们对左端点的每一个结点考虑连向右侧的方案数。 考虑分类讨论,令左端点为 ,右端点为 。 假如 ,那么我们整个区间的最
阅读全文
摘要:洛谷。 题意 应该显然,注意最多只能翻转一条边,并且可以不翻转。 分析 首先观察数据范围 , ,可以发现我们的 和 并不是同级的,因此,在众多的最短路算法中,我们应当选择不加堆优化的 di
阅读全文
摘要:传送门。 前置知识 区间 dp。 题意 一个周长为 的圆,在初始点的顺时针方向依次排列着 物品,第 个物品在顺时针 米处,可以在 前收集到这个物品。 此时,从初始点出发,时间为 ,允许顺时针或逆时针移动,问最多可以收集到多
阅读全文
摘要:好久没写题解,水一篇。 题意 题意显然。 分析 看到这道题,我们就应该进行一个小贪心,对于最左边某一字符,直到最右边的这一字符,我们不会在中间删除同样的字符,不然则可以保留这一字符,将两边往内缩。 也就是说,我们确定了最左边的 J 后,那么留下最后一个 J 必然是当前这个 J 的后面的第 \(K-1
阅读全文
摘要:洛谷。 题意 有一棵 个结点的树,初始每一条边的长度都为 。有一种操作,会使某一条边的长度增加 。给定 次询问,每次给出询问 ,问正好操作 次后,最短树直径。(询问之间独立)。 对于 的数据,\(N\le 3
阅读全文