摘要: 欢迎各位来到我的博客! 这里是 Plozia,目前是一名高一 OIer,会在洛谷,Codeforces,Atcoder 上各种写题。 我的 CodeBase:CodeBase of Plozia,里面有我写题的代码,可能有很小一部分代码会不正确(但至少保证博客里贴出来过的代码除特殊说明外都是正确的) 阅读全文
posted @ 2022-04-28 21:40 Plozia 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 持续更新,周期特别长。 阅读全文
posted @ 2022-04-17 19:04 Plozia 阅读(36) 评论(0) 推荐(1) 编辑
摘要: update on 2022/5/22:修正了部分语言,使这些语言看起来不那么偏激,但是我保证意思没变。 对 csdn 彻底失望,搬过来了。 本博客搬家之后首篇文章是:数据结构专题-学习笔记:cdq 分治,之前的所有博客的 Update 中如果出现早于发布时间的不要感到奇怪,因为都是搬家的。 以及搬 阅读全文
posted @ 2022-04-06 21:15 Plozia 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 一道线性 DP 题。 首先处理输入数据,如果出现了一个 0 说明这个串前面怎么操作都会白给(乘了 0),因此这个 0 前面的所有数据可以直接删掉**但是这个 0 要保留。**1 对答案是没有影响的,忽略即可,最后将所有的保留的数字转换成乘号,因为过程中我们不关注到底乘了多少,只关心方案数(和加号省略 阅读全文
posted @ 2022-06-08 16:23 Plozia 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 有 CF/AT 的题,当然也有你谷的部分好题。 练这块的原因: CF/AT 简单题一时半会想不到导致掉大分 → 思维训练不足 有些简单题想得到但是细节问题吃罚时罚分 → 写代码的准确度 持续更新,但是会在今年 Noip 前结束更新,题目按照做题顺序排序。 开头为 CF 的是 CF 题目,AT 的会给 阅读全文
posted @ 2022-05-19 20:44 Plozia 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 线段树合并 + 树上差分的好题。 考虑对每个点开一个值域线段树维护值而不是深度,值域 \([-n,n]\),预处理 LCA 和 每个点的深度。 将 \(s \to t\) 的路径拆成两段,一段是 \(s \to lca\): 注意到此时 \(s \to lca\) 的路径上所有点 \(x\),设其被 阅读全文
posted @ 2022-05-11 17:15 Plozia 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 一道线段树合并的题,照理来说这道题思路不值得我写题解但是写法值得。 应当说对于深度问题线段树合并可以乱杀,对于这道题每个节点维护一棵关于深度的线段树,每个叶子节点维护一个 set 表示当前这个节点子树内该深度的名字组成的 set,注意深度是全局深度,合并时采用启发式合并。 然后就是写法问题。 线段树 阅读全文
posted @ 2022-05-08 21:06 Plozia 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 一道 Idea 题,但是做过两道类似寿司晚宴的我还是没能想出这道题…… 一个显然的思路是先枚举所有质数用 B 操作筛掉合数,然后用 A 操作知道有哪些质因子,枚举这些质因子的次幂得到这个数,但 100000 以内的质数个数是 9592,先筛合数再用 A 操作都已经超出限制了。 考虑按照 \(\sqr 阅读全文
posted @ 2022-05-08 19:40 Plozia 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 一道不错的思维题,不过这个 100 具有迷惑性,感觉改成 127 会方便做题,不过改成 100 也有其意义。 既然每次询问是随机一个数异或,因此我们要保证给出去的 100 个数要有相同点,由于猜测数二进制下只有 14 位,因此第一次询问前 7 位为 0,第二次询问后 7 位为 0,然后得到的两个答案 阅读全文
posted @ 2022-05-06 16:09 Plozia 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 一道简单 ds 优化 dp 题。 朴素方程:设 \(f_{i,j}\) 表示将 \([1,i]\) 内的所有数划分成 \(j\) 段的方案数,那么有转移方程: \(f_{i,j}=\max\{f_{k,j}+val(j+1,i) \mid k - 1 \le j < i\}\) 也就是将 \([j+ 阅读全文
posted @ 2022-04-29 20:17 Plozia 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 欢迎各位来到我的博客! 这里是 Plozia,目前是一名高一 OIer,会在洛谷,Codeforces,Atcoder 上各种写题。 我的 CodeBase:CodeBase of Plozia,里面有我写题的代码,可能有很小一部分代码会不正确(但至少保证博客里贴出来过的代码除特殊说明外都是正确的) 阅读全文
posted @ 2022-04-28 21:40 Plozia 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 Link Cut Tree 动态树,简称 LCT,是一种维护动态森林的数据结构。 前置知识:Splay。 2. LCT 例题:P3690 【模板】动态树(Link Cut Tree) 2.1 实链剖分 实链剖分也是一种对树的剖分方式,类似于重链剖分和长链剖分,其将一棵树上的边,随意划分成 阅读全文
posted @ 2022-04-22 21:07 Plozia 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 一道 LCT 好题。 一种简单的 \(O(n^2)\) 就是枚举区间然后并查集看一下有没有成环。 注意到一个性质:如果 \([l,r]\) 内边已经成环,那么 \([l,r'],r' \in [r,n]\) 内边肯定都已成环。 据此,考虑设置两个指针 \(l,r\),对于每一个 \(l\) 求出对于 阅读全文
posted @ 2022-04-17 21:54 Plozia 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 cdq 分治,是一种用于计算偏序问题的离线算法,常数较小,跑的肯定比 kdtree 要快。 如无特殊说明,默认下文的点不重合,数字都是正整数。 2. 详解 cdq 最经典的是解决三维偏序,四维偏序可以 cdq 套 cdq 但是五维以上偏序还是写 kdtree 得了。 一维偏序:一维坐标系 阅读全文
posted @ 2022-04-17 20:04 Plozia 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 持续更新,周期特别长。 阅读全文
posted @ 2022-04-17 19:04 Plozia 阅读(36) 评论(0) 推荐(1) 编辑
摘要: 1. 前言 线段树分治,是一种数据结构,常用来离线维护一张图的连通性。 大致来讲,这张图的边会在一段时间内出现,别的时间消失,然后会有一些询问,线段树分治解决的就是这样的问题。 2. 详解 模板题:P5787 二分图 /【模板】线段树分治,下面假定 \(n,m\) 同阶。 首先考虑一个暴力做法:对于 阅读全文
posted @ 2022-04-17 19:03 Plozia 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 一道线段树分治套路好题。 将删边变为加边,考虑一条边能够加到哪些集合里面。注意,这里不能直接添加,也就是说对于边 \((x,y)\),如果其在集合 \(t\) 里面,不能直接插入到区间 \([1,t-1],[t+1,m]\) 中,这也是我的一个思维定式导致的误区。 正确的做法是应该都存下来,然后分段 阅读全文
posted @ 2022-04-17 19:03 Plozia 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一道线段树合并的题。 下令 \(dep_u\) 是 \(u\) 的深度,\(dis_{x,y}\) 是 \(x \to y\) 的路径长度。 对于一组询问 \((u,k)\),我们要找出符合条件的 \((v,w)\) 满足 \(dis_{u,v} \le k\) 并且 \(u,v\) 都是 \(w\ 阅读全文
posted @ 2022-04-17 19:02 Plozia 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一道排列组合题,还是我的排列组合太菜了…… 选必三重修警告 先说明一个东西:对于 \(n\) 个楼房,高度限制为 \(m\),那么高度不下降的方案数为 \(C_{n+m-1}^{m-1}\)。 理由:\(n\) 个楼房选高度,变成 \(n+m\) 个楼房选 \(m\) 个高度,并且每个高度必须有得选 阅读全文
posted @ 2022-04-17 19:02 Plozia 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 一道莫反好题。 先证个式子:\(E(X)=\sum_{i\ge 1}P(X \ge i)\),也就是最终长度为 \(X\) 的期望是所有最终长度小于等于 \(X\) 的概率之和。 证明:\(E(X)=\sum_{i\ge 1}iP(X=i)=\sum_{i\ge 1}\sum_{1\le j\le 阅读全文
posted @ 2022-04-17 19:01 Plozia 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 一道莫反套路题,其思路基本贯穿幽灵乐团。 下面钦定 \(n \le m\),这样做答案不变,规定所有除法都是整除(所以不要乱约分)。 \(\prod_{i=1}^{n}\prod_{j=1}^{m}f_{\gcd(i,j)}\) 枚举 \(\gcd(i,j)\),注意这一步之后 \([gcd(i,j 阅读全文
posted @ 2022-04-17 19:01 Plozia 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 一道不错的题目,只不过能被 hash 和维护若干次方和通过,本篇讲正解。 考虑一个乱序序列重排后是等差数列的一些条件(设区间 \([l,r]\),公差为 \(d\)): 数列最大值 - 数列最小值 = \((r-l)*d\)。 相邻两数的差的绝对值的最大公约数是 \(d\)。 序列中没有重复的数。 阅读全文
posted @ 2022-04-17 18:59 Plozia 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 0. 前言 本篇文章会从狄利克雷卷积的角度,讨论莫比乌斯函数与欧拉函数的相关性质。 或者说就是利用狄利克雷卷积重新证一遍这两个函数的性质以及弄出几个新的式子。 其实我觉得这块还是挺妙的,也可能是我做 DP 和数据结构做疯了( 1. 前置知识 首先您需要知道欧拉函数,狄利克雷卷积,莫比乌斯函数+莫比乌 阅读全文
posted @ 2022-04-17 18:58 Plozia 阅读(31) 评论(0) 推荐(0) 编辑