写的大概是一些不太难的题目,避免它们写成常规题解又都埋没了。
本人太菜,如果想欣赏一句话题解请移步 Tiw 的博客。
花式 DP
树形 DP 。
显然我们只需要枚举质数作为 (gcd) 的情况,以及一个很显然的 DP :
(f(u,p)):从 (u) 出发向子树内的 (p|gcd) 的最长链。
转移略。目测状态会很大,优化一下。发现一定有 (p|a_u) ,而 (a_u) 不同的质因子数量很少。因此对 (a_u) 质因数分解一下,把可用质因子用作状态即可。转移的时候找出两棵树根的公共质因子,枚举并转移即可。
状压 DP ,敬请移步正紧题解。
状压 DP ,敬请移步正经题解。
状压 DP 。
考虑将二进制数看作集合,原先 (a_i) 变成 (A_i)。则集合最大有 (21) 个元素。即全局 (|U|=21) 。
则与 (a_i) 相容的数对应的是 (complement_{U}^{A_i}) 的子集。
于是可以考虑设 (f(S)) 表示 (S) 的某个子集对应的二进制数,并且出现在了序列里。如果不存在则 (f(S)=0) 。
转移可以直接 (O(2^{21} imes 21)) 暴力枚举一遍。最后查询答案即可。
树形 DP 。敬请移步正经题解。
状压 DP 。
不难想到枚举一下最小出现次数 (L) ,然后每种数出现次数 (in{L,L+1}) 。
由于每种数要在序列上连续,又都要出现,考虑一个状压 DP :
(f(i,S)):前 (i-1) 个数,此时已经出现在序列中的数为 (S) 的最长长度。
在位置 (i) 进行转移的时候,发现直接钦定 (a_i) 作为下一种数进行转移即可。转移的数 ( ot= a_i) 情况实际上总会在之后枚举到。然后就还需要一个 (nxt(i,j)) 表示从 (i) 出发,取 (j) 个和 (a_i) 相同的数之后到达的转移点。
最后发现 (L) 存在单调性,二分一下就可以得到 (O(log_2n imes n imes 2^8+n^2)) 的算法。记得在二分的chk()
中直接更新答案。
状压 DP 。敬请移步正紧题解。
[CF908D] New Year and Arbitrary Arrangement
期望 DP 。
下文直接用 (P_a) 和 (P_b) 指代放 "a" 和放 "b" 的概率。
不难想到这样一个状态:
(f(i,j)):字符串中拥有 (i) 个 "ab" 子序列和 (j) 个 "a" 时,最终字符串的期望 "ab" 子序列个数。
考虑转移:
此时问题就变成了如何确定初始和目标状态。
考虑 (ige k) 就不应该继续转移;更进一步,如果有 (i+jge k) ,那么此时只要再出现一个 "b" ,这个过程也会中止,此时的期望可以直接计算:
目标状态是什么?应该是 (f(0,0)) 吗?不是,因为所有的 (f(i,0)) 都会向自己转移,推导一下就会发现它只会从 (f(i,1)) 的位置转移。因而我们应当钦定一个 (a) 在开头,将 (f(0,1)) 作为中止状态。
时间是 (O(k^2)) 。可以发现本题的难点在于寻找初始和终止状态。这个通常和转移与条件有关,需要灵活应对。
AC 记录 。
一般 DP ,自动机, DP 优化 。敬请移步正经题解。
神仙图论
数学杂论
保序回归特例、贪心 。敬请移步正经题解。
概率期望,期望 DP。敬请移步正经题解。
势能分析(?)。敬请移步正经题解。
玄学结构
特殊 DP ,可并堆,可持久化。敬请移步正紧题解。
二分,可持久化线段树。
显然我们可以二分答案。
此时我们就只能使用美味值大于等于二分答案的果汁。假如我们可以得到可用集合以价格为下标、升为值的权值线段树,我们就可以直接在线段树上二分,求出指定升数下的最小花费并判断。
显然我们就可以预处理出前缀的主席树。
时间复杂度 (O(nlog_2n+qlog_2^2n)) 。
AC 记录 。
离线,树状数组, DFS 序。
首先发现 (b) 要么是 (a) 的祖先,要么是 (a) 的子孙且离 (b) 不超过 (k) 。
前者的贡献很好计算。考虑后者。可以发现,一个合法的 (b) 带来的贡献就是 (siz_b-1) 。于是转而统计所有合法的 (b) 的贡献之和。可以按照深度从小到大插入所有节点,将 (dep_a+k) 之前的所有点都插入之后就可以统计 (a) 的子树内 (b) 的贡献。这个贡献可以很方便地展开到 DFS 序上用树状数组维护。
时间复杂度 (O((n+q)log_2n)) 。
AC 记录 。
可持久化线段树,倍增,分类讨论。 敬请移步正经题解。
栈模拟, DP 。 敬请移步正经题解。
任务列表
待完成
[CF1119F]Niyaz and Small Degrees
[CF1119F]Niyaz and Small Degrees
[雅礼集训2019 Day1]permutation
[LOCAL] 画画图
[雅礼集训2019 Day5]Inverse