摘要:
一道不错的思维题,不过这个 100 具有迷惑性,感觉改成 127 会方便做题,不过改成 100 也有其意义。 既然每次询问是随机一个数异或,因此我们要保证给出去的 100 个数要有相同点,由于猜测数二进制下只有 14 位,因此第一次询问前 7 位为 0,第二次询问后 7 位为 0,然后得到的两个答案 阅读全文
摘要:
一道简单 ds 优化 dp 题,下无特殊说明则 $k$ 不是题目中的 $k$。 朴素方程:设 $f_{i,j}$ 表示将 $[1,i]$ 内的所有数划分成 $j$ 段的方案数,那么有转移方程: $$f_{i,j}=\max{f_{k,j-1}+val(k+1,i) \mid k\le i}$$ 也就 阅读全文
摘要:
欢迎各位来到我的博客! 这里是 Plozia,曾经是一名 OIer,如今是一名 whker,高二,坐标 ZJ。 已经 AFO 了。 我的洛谷账号:Plozia 我的博客会写一些学习笔记,题目题解,偶尔会写游记之类的。 CSP-S2022 279pts,NOIP2022 被某不讲武德送退役了 /oh 阅读全文
摘要:
1. 前言 Link Cut Tree 动态树,简称 LCT,是一种维护动态森林的数据结构。 前置知识:Splay。 2. LCT 例题:P3690 【模板】动态树(Link Cut Tree) 2.1 实链剖分 实链剖分也是一种对树的剖分方式,类似于重链剖分和长链剖分,其将一棵树上的边,随意划分成 阅读全文
摘要:
一道 LCT 好题。 一种简单的 \(O(n^2)\) 就是枚举区间然后并查集看一下有没有成环。 注意到一个性质:如果 \([l,r]\) 内边已经成环,那么 \([l,r'],r' \in [r,n]\) 内边肯定都已成环。 据此,考虑设置两个指针 \(l,r\),对于每一个 \(l\) 求出对于 阅读全文
摘要:
1. 前言 cdq 分治,是一种用于计算偏序问题的离线算法,常数较小,跑的肯定比 kdtree 要快。 如无特殊说明,默认下文的点不重合,数字都是正整数。 2. 详解 cdq 最经典的是解决三维偏序,四维偏序可以 cdq 套 cdq 但是五维以上偏序还是写 kdtree 得了。 一维偏序:一维坐标系 阅读全文
摘要:
Stop Updating. 阅读全文
摘要:
1. 前言 线段树分治,是一种数据结构,常用来离线维护一张图的连通性。 大致来讲,这张图的边会在一段时间内出现,别的时间消失,然后会有一些询问,线段树分治解决的就是这样的问题。 2. 详解 模板题:P5787 二分图 /【模板】线段树分治,下面假定 \(n,m\) 同阶。 首先考虑一个暴力做法:对于 阅读全文
摘要:
一道线段树分治套路好题。 将删边变为加边,考虑一条边能够加到哪些集合里面。注意,这里不能直接添加,也就是说对于边 \((x,y)\),如果其在集合 \(t\) 里面,不能直接插入到区间 \([1,t-1],[t+1,m]\) 中,这也是我的一个思维定式导致的误区。 正确的做法是应该都存下来,然后分段 阅读全文
摘要:
一道线段树合并的题。 下令 \(dep_u\) 是 \(u\) 的深度,\(dis_{x,y}\) 是 \(x \to y\) 的路径长度。 对于一组询问 \((u,k)\),我们要找出符合条件的 \((v,w)\) 满足 \(dis_{u,v} \le k\) 并且 \(u,v\) 都是 \(w\ 阅读全文
摘要:
一道排列组合题,还是我的排列组合太菜了…… 选必三重修警告 先说明一个东西:对于 \(n\) 个楼房,高度限制为 \(m\),那么高度不下降的方案数为 \(C_{n+m-1}^{m-1}\)。 理由:\(n\) 个楼房选高度,变成 \(n+m\) 个楼房选 \(m\) 个高度,并且每个高度必须有得选 阅读全文
摘要:
一道莫反好题。 先证个式子:\(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 阅读全文
摘要:
一道莫反套路题,其思路基本贯穿幽灵乐团。 下面钦定 \(n \le m\),这样做答案不变,规定所有除法都是整除(所以不要乱约分)。 \(\prod_{i=1}^{n}\prod_{j=1}^{m}f_{\gcd(i,j)}\) 枚举 \(\gcd(i,j)\),注意这一步之后 \([gcd(i,j 阅读全文
摘要:
一道不错的题目,只不过能被 hash 和维护若干次方和通过,本篇讲正解。 考虑一个乱序序列重排后是等差数列的一些条件(设区间 \([l,r]\),公差为 \(d\)): 数列最大值 - 数列最小值 = \((r-l)*d\)。 相邻两数的差的绝对值的最大公约数是 \(d\)。 序列中没有重复的数。 阅读全文
摘要:
OI 中的莫反与欧拉函数关系。 阅读全文
摘要:
OI 中的莫反 阅读全文
摘要:
1. 前言 整除分块,是一种数论的基础算法,必备知识,在很多题目中都有涉及但是题目很基础。 整除分块主要解决的是这样一类问题:求值: \(\sum_{i=1}^{n}f(i)g(\Big\lfloor\dfrac{k}{i}\Big\rfloor)\) 其中已知 \(f\) 的前缀和或者能 \(O( 阅读全文
摘要:
OI 中狄利克雷卷积。 阅读全文
摘要:
1. 前言 Prufer 序列,是一种用来描述树的序列,一般用于一些树上度数统计的题。 注意作者是 OIer,考虑到 Prufer 序列在 OI 里面的应用等,本篇文章只讲述 $O(n \log n)$ 的求法。 2. 详解 设有一棵 $n$ 点的树,则这个 $n$ 点的树和一个长度为 $n-2$ 阅读全文
摘要:
1. 前言 模拟退火,是一种随机化算法,OI 中经常用来骗分,我因为不知道这算啥所以把它放在杂项里面了(貌似标题有点奇怪)。 模拟退火这个算法是根据金属退火原理发明的。 2. 详解 首先我们知道一般的二分 / 三分是根据当前决策点是否最优决定往哪边走的,换句话说如果当前点不优那么我们就不选取这个点。 阅读全文