摘要:
tag:dp,组合计数 经典看完dp定义秒懂 考虑算出满足条件的再用总数减。若一个排列满足条件,那么就不能在遇到 \(a_i=n\) 之前返回。所以只需要考虑 \(a_i=n\) 前面的部分。 为什么使用dp?若一个排列扫完之后没有返回,那么单独把这个排列的任何一段区间拿出来扫,都不会返回,并且拿出 阅读全文
摘要:
tag:重心,dp,组合计数 晕呼呼地计数... 题意 求 \(n\) 个点的不同的树的个数(同构视为一种,无标号),使得每个点的度数为 \(1\) 或 \(d\)。 \(n\le1000, 2\le d\le10\) 题解 无标号树同构问题一般想到找重心,把重心作为根,这里先假设重心唯一(\(n\ 阅读全文
摘要:
tag:构造 题意 设计一个确定性有限状态自动机,使得恰好能接受1~n的全排列中的 \(q\) 个 \(n\leq12,0\leq q\leq n!\) 输出 第一行为状态数 \(Q(Q\le n+1)\) 接下来 \(Q\) 行,每行 \(n\) 个数。第 \(i\) 行第 \(j\) 个数 \( 阅读全文
摘要:
tag:数论,构造 题意 给定 \(X,Y\),设 \(g(x,y)\) 为 对 \(x,y\) 用辗转相除法求gcd需要的步数。求 \(gcd(x,y),\ x\le X,\ y\le Y\) 的最大值,和能取到最大值的 \((x,y)\) 的对数。 \(Q\le300000,\ X,Y\le10 阅读全文
摘要:
太妙了!! 首先枚举每一只鸡,维护一个存活集合,初始化只有这只鸡。倒着考虑每一步。 若两只鸡都没必要存活,就忽略 若其中一只鸡需要存活,则另一只鸡也必须活到这一步,所以把另一只鸡也加入存活集合 若两只鸡都必须存活,但是肯定有一只鸡要死,所以枚举的这只鸡必死 对于两只鸡,如果它们的存活集合包含了同一只 阅读全文
摘要:
tag:组合计数 计数好题( 题意 给定三个矩形,保证顺序为从左下到右上,且不相交。三个矩形中各取一个点,\(S,P,T\),计算从 \(S\) 经过 \(P\) 到 \(T\) 的方案数,求所有选取方法的方案数之和。 一步一步考虑。 点到点 从 \((x_1,y_1)\) 到 \((x_2,y_2 阅读全文
摘要:
tag:构造,欧拉回路 题意 给定两个点数均为 \(n\) 的有根树,给标号赋值使得两棵树上任意一个子树和均为 \(1\) 或 \(-1\) 一棵树 首先只考虑一棵树,显然可以直接从叶子往上构造。但是为了方便推广到两棵树,考虑找出一个等价过程。 由于一个子树对父亲的 \(sz\) 的贡献只有 \(1 阅读全文
摘要:
tag:组合计数,生成函数,多项式快速幂 蹲坑想出来的大体思路(雾 为了方便表述,下面这种形式 \[ \begin{matrix}A_{x_1}&A_{x_2}&\cdots&A_{x_n}\\B_{y_1}&B_{y_2}&\cdots&B_{y_n}\end{matrix} \] 表示一串交换操 阅读全文
摘要:
tag:组合计数 题意 有 \(n\) 个回答yes的问题和 \(m\) 个回答no的问题,求最优策略下期望回答正确的答案个数,回答一个问题后立刻可以知道是否回答正确。 \(n,m\leq5\cdot10^5,\ mod=998244353\) 首先我很naive地认为最优策略是乱回答 最优策略是: 阅读全文
摘要:
tag:点分治 怎么两篇题解都没了,我来补一篇 这种树上路径问题很容易想到是点分治,考虑如何计算两条路径拼起来的答案。 首先一定是(...(...(...(...这样一条路径和...)...)...)这样一条路径拼起来,然后因为是求 \(\max\),所以求出两边的最大深度再取 \(\max\) 就 阅读全文