摘要: \(\text{HNOI2015}\) 落忆枫音 题目: 给一个 \(n\) 个点 \(m\) 条边的 DAG,点 \(1\) 的入度为 \(0\)。随后向图中再加入一条有向边,加边后图可能不再是 DAG。 求出图中有多少个 \(n-1\) 条有向边的集合,满足只使用集合中的边能从 \(1\) 到达 阅读全文
posted @ 2022-01-07 19:38 trsins 阅读(16) 评论(0) 推荐(0) 编辑
摘要: \(\text{CF285E Positions in Permutations}\) 算法:\(\text{dp}\)、组合数学、容斥 题目: 称一个 \(1\sim n\) 的排列的完美数为有多少个 \(i\) 满足 \(|P_i-i|=1\)。 求有多少个长度为 \(n\) 的完美数恰好为 \ 阅读全文
posted @ 2022-01-07 19:36 trsins 阅读(30) 评论(0) 推荐(0) 编辑
摘要: \(\text{[POI2008]STA-Station}\) 算法:树形 \(\text{dp}\),换根,二次扫描 题目: 给定一个 \(n\) 个点的树,请求出一个结点,使得以这个结点为根时,所有结点的深度之和最大。 一个结点的深度之定义为该节点到根的简单路径上边的数量。 \(n\le 10^ 阅读全文
posted @ 2022-01-07 19:36 trsins 阅读(24) 评论(0) 推荐(0) 编辑
摘要: $\text{CF1039D You Are Given a Tree }$ 算法:根号分治,\(\text{dp}\) 题目: 有一棵 \(n\) 个节点的树。 其中一个简单路径的集合被称为 \(k\) 合法当且仅当: 树的每个节点至多属于其中一条路径,且每条路径恰好包含 \(k\) 个点。 对于 阅读全文
posted @ 2022-01-07 19:35 trsins 阅读(41) 评论(0) 推荐(0) 编辑
摘要: $\text{CF1097G Vladislav and a Great Legend }$ 算法:树形 \(\text{dp}\),斯特林数,虚树 题目: 给你一棵有 \(n\) 个节点的树 \(T\),\(n\) 个节点编号为 \(1\) 到 \(n\)。 对于 \(T\) 中每个非空的顶点的集 阅读全文
posted @ 2022-01-07 19:35 trsins 阅读(26) 评论(0) 推荐(0) 编辑
摘要: $\text{CF1101D GCD Counting }$ 算法:树形 \(\text{dp}\) 题目: 给出一棵树,树有点权,共 \(n\) 个点,求树上的一条链,满足:链上所有点的点权的 \(gcd>1\) 且链上的点数最多。注意一个点也可以构成一条链。\(a_i\) 表示第 \(i\) 个 阅读全文
posted @ 2022-01-07 19:34 trsins 阅读(24) 评论(0) 推荐(0) 编辑
摘要: \(\text{P4199}\) 万径人踪灭 算法:\(\text{FFT,manacher}\) 题目: 在一个只包含 \(a,b\) 的字符串中选择一个序列,使得 位置和字符都关于某条对称轴对称。 不能是连续的一段。 求有多少个满足要求的序列,答案对 \(1e9+7\) 取模。 \(n\le 1 阅读全文
posted @ 2022-01-07 19:33 trsins 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 【\(\text{AHOI/HNOI2017}\)】礼物 算法:\(\text{FFT}\) 题目: 给定数列 \(a,b\),\(b\) 可以循环移动,选择整数 \(c\),求 $\large \sum\limits_{i=1}^n(a_i-b_i+c)^2$最小值。 \(1 \le n \le 阅读全文
posted @ 2022-01-07 19:32 trsins 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 【\(\text{ZJOI2014}\)】 力 算法:\(\text{FFT}\) 题目: 给出 \(n\) 个数 \(q_1,q_2, \dots q_n\),定义 \(F_j~=~\sum_{i = 1}^{j - 1} \frac{q_i \times q_j}{(i - j)^2}~-~\s 阅读全文
posted @ 2022-01-07 19:32 trsins 阅读(17) 评论(0) 推荐(0) 编辑
摘要: \(\text{CF993E\ Nikita\ and\ Order\ Statistics}\) 算法;\(\text{FFT}\) 题目: 给你一个数组 \(a_{1 \sim n}\),对于 \(k = 0 \sim n\),求出有多少个数组上的区间满足:区间内恰好有 \(k\) 个数比 \( 阅读全文
posted @ 2022-01-07 19:31 trsins 阅读(24) 评论(0) 推荐(0) 编辑
摘要: \(\text{CF528D Fuzzy Search}\) 算法:\(\text{FFT}\) 题目: 有一个长度为 \(n\) 的串 \(S\),以及长度为 \(m\) 的串 \(T\)。 现给定一个数 \(k\) ,我们说 \(T\) 在 \(S\) 的位置 \(i\) 匹配上,当且仅当对于每 阅读全文
posted @ 2022-01-07 19:29 trsins 阅读(9) 评论(0) 推荐(0) 编辑
摘要: \(\text{CF1096G Lucky Tickets}\) 算法:\(\text{NTT}\) 题目: 一个 \(n\) 位数,每位可以是给出的 \(k\) 个数码中的一个数,可以有前导$0$,输出前 \(n/2\) 位之和与后 \(n/2\) 之和相等的方案数,保证 \(n\) 是偶数。 输 阅读全文
posted @ 2022-01-07 19:29 trsins 阅读(21) 评论(0) 推荐(0) 编辑
摘要: \([\text{CEOI2004\ Sweet}]\) 算法:生成函数 题目: 有 \(n\) 堆糖果。不同的堆里糖果的种类不同(即同一个堆里的糖果种类是相同的,不同的堆里的糖果的种类是不同的)。第 \(i\) 个堆里有 \(m_i\) 个糖果。现在要吃掉至少 \(a\) 个糖果,但不超过 \(b 阅读全文
posted @ 2022-01-07 19:28 trsins 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 【\(\text{TJOI2015}\)】概率论 算法:生成函数 题目: 对于一棵随机生成的 \(n\) 个结点的有根二叉树(所有互相不同构的形态等概率出现),求它的叶子节点数的期望是多少。 题解: 设 \(p(n)\) 表示有 \(n\) 个节点的二叉树的个数,显然 \(p(0) = 1\)。 设 阅读全文
posted @ 2022-01-07 19:28 trsins 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 【雅礼集训 \(2018\)】方阵 算法:斯特林反演 题目: 给定 \(n\times m\) 的矩阵,每个格子填上 \([1,c]\) 的数字,求任意两行、两列均不同的方案数。 \(n,m\le 5000\) 题解: 设 \(g(m)\) 表示 \(n\times m\) 的矩阵中任意两行不相同的 阅读全文
posted @ 2022-01-07 19:27 trsins 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 【国家集训队 \(2011\)】\(\text{Crash}\) 的文明世界 算法:第二类斯特林数、换根 \(\text{dp}\) 题目: 给出一棵 \(n\) 个点的树,求对于每个点 \(i\) 的 \(d(i)\) 值。 \(d(i)=\sum\limits_{1\leq j\leq n}^{ 阅读全文
posted @ 2022-01-07 19:27 trsins 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 树上游走 算法:组合数学、斯特林反演、\(\text{FFT}\) 题目: 给定 \(n\) 个节点的树,从某个点出发开始随机游走:在点 \(u\) 时,有 \(p_u\) 的概率停留在原地,否则等概率地向相邻的点移动,直到移动到 \(1\) 号点停下。 求从每个点出发至停下,所花费的时间的 \(k 阅读全文
posted @ 2022-01-07 19:26 trsins 阅读(109) 评论(0) 推荐(0) 编辑
摘要: \(\text{[ARC096E]\ Everything\ on\ It}\) 算法:容斥、组合 题目: 对于集合 \(\{1,2,\dots,n\}\),求它的子集族中,有多少个满足: 任意两个子集互不相同; \(1,2,\dots,n\) 都在其中至少出现了 \(2\) 次。 答案对 \(M\ 阅读全文
posted @ 2022-01-07 19:26 trsins 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 一. 整体二分概念 整体二分的主体思路就是把多个查询一起解决,是一个离线算法。 其要求: 询问的答案具有可二分性 修改对判定答案的贡献互相独立,修改之间互不影响效果 修改如果对判定答案有贡献,则贡献为一确定的与判定标准无关的值 贡献满足交换律,结合律,具有可加性 题目允许使用离线算法 其大体结构框架 阅读全文
posted @ 2022-01-07 19:22 trsins 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 一. cdq分治的定义 cdq 分治是一种思想,由陈丹琦引入。 cdq 分治解决和点对有关的问题 cdq 分治优化 1D/1D 动态规划的转移 通过 cdq 分治,将一些动态问题转化为静态问题 仅支持离线操作。 一般来说,cdq 分治是通过如下结构进行分治: 分治一共分为四步: 找到当前区间 \([ 阅读全文
posted @ 2022-01-07 19:21 trsins 阅读(1796) 评论(1) 推荐(0) 编辑