02 2022 档案
摘要:本来打算 2022 赛季结束后再写,还是先写了免得以后麻烦( 题目按难度递增(个人感觉 [USACO19DEC]Greedy Pie Eaters P 区间 DP,一个小 trick 是预处理在被区间 \([l,r]\) 包含的经过点 \(k\) 的最大值。 [USACO20FEB]Equilate
阅读全文
摘要:判断 \(x\) 是否能最后一个删,就是以 \(x\) 为根建一颗内向树,然后连边 \(a_i\to b_i\),判断是否有环即可。 所以如果 \(a_i\) 是 \(b_i\) 祖先则无解。所以我们先将所有 \(a_i\) 一侧的子树上的点标记为无解。 关键结论:对于没有标记的节点,要么全部有解,
阅读全文
摘要:不用生成函数,目前比 rank2 快四倍。 首先这是一道不简单的数数思维题。 我们要统计对于所有排列的深度之和,直接做非常不方便。而数数题一般将条件化简,或找到等价的容易处理的条件。 这里求深度,等价于枚举一个点的祖先,它的祖先个数 \(+1\) 就是它的深度。这样问题转化为求数对 \((u,v)\
阅读全文
摘要:保序指保持原来的偏序,在保持给定偏序前提下求一组变量 \(\{y_i\}\) 最拟合给定变量 \(\{x_i\}\)。 用数学术语表示,给定偏序集合 \(S = \{(x,y)\}\),大小为 \(n\) 的集合 \(X=\{x_i\},W=\{w_i\}\),求一组大小为 \(n\) 变量集合 \
阅读全文
摘要:值得一做的数数题(容斥原理,状压DP,子集卷积) 我们要求准确的生成串为 \(s\) 的方案并不好做,考虑转换为求高维前缀和,然后用容斥还原。 这样 \(s_i=1\) 表示必须有边,\(s_i=0\) 表示无限制。 对于任何一个串 \(s\),我们将必须有的边连起来,会得到若干个单链,现在我们要求
阅读全文
摘要:敢想敢写。。。 我们直接定义状态 \(f_{i}\) 表示数 \(i\) 能否被表示出来。 然后我们枚举最低位 \(a_x\),如果 \(k | (i - a_{x})\) 就可以从 \(f_{(i - a_{x}) / k}\) 转移到 \(f_{i}\)。因为次低位一定是 \(k\) 的倍数,所
阅读全文
摘要:非常神的 DP 思维题。 不难想到我们枚举有哪些牛没有匹配,如果牛 \(i\) 没有匹配,那么所有 \(\ge s_i\) 的 牛棚 \(t_j\) 必须匹配。 所以我们只关心最小的没有被匹配的牛。 接下来是这题最关键的一步,我们把牛和牛棚放到一起排序。 因为我们只关心相对大小,放到一起后可以极大程
阅读全文
摘要:如果不考虑 \(A_i\neq A_j\) 的条件非常好做,不难想到将这个条件容斥掉。 这等价于从 \(\dfrac{N(N - 1)}{2}\) 个二元组中钦定一些使得对应两端相同,表现在图中就是求连通块个数和对应的 \(\rm lcm\)。 所以我们不难设计 DP,\(f_{S}\) 表示集合为
阅读全文
摘要:我们将每个回文串作为一个节点,如果 \(T\) 是 \(S\) 的子串,就连一条有向边 \(S\to T\),最后我们可以得到一个 DAG。 然后我们要选出最多的节点使得不存在一个节点能到达另一个节点。 首先我们直到节点数是 \(<2|S|\) 的,因为本质不同的回文串只会在 manacher 算法
阅读全文
摘要:我们先求个前缀和 \(s_i = \bigoplus\limits_{x = 1}^ix\),问题转化为求满足 \(L - 1 \le l < r \le R\) 且 \(s_r \oplus s_l = V\) 的二元组 \((l,r)\) 个数。 对于 \(s_i\),不难发现以 \(4\) 为
阅读全文
摘要:My Blog T1 直接从 \(1\) 到 \(n\) 枚举每一位能填的最小数,可以做到 \(\mathcal{O}(N^2)\) 复杂度。 这本质上是求满足当前数小于前缀最大数的位置,考虑线段树,支持单点修改和整体查询。线段树每个节点维护两个 set,\(s\) 和 \(t\),分别表示区间中可
阅读全文

浙公网安备 33010602011771号