1 条题解
-
0
计数 123:题解
思路
数列中唯一不允许的相邻对是 和 。先删去所有的 ,得到一个只含 的序列 。设 中相邻元素不同的位置有 个。
把 个 放回 的 个空隙。上述 个发生颜色切换的内部空隙必须至少放一个 ,其余空隙可以为空。先给这 个空隙各放一个 ,再用隔板法分配剩余的 个 ,方案数为
因此只需计算:固定 个 和 个 时,恰有 次颜色切换的二元序列有多少个。
做法
若 ,首尾颜色不同,两种颜色都恰有 段。把 个 和 个 分别拆成 个非空段,且可以选择以哪种颜色开头,方案数为
若 ,首尾颜色相同。以 开头并结尾时, 有 段、 有 段;交换两种颜色得到另一种情况。方案数为
$$\binom{X_1-1}{k}\binom{X_3-1}{k-1} +\binom{X_1-1}{k-1}\binom{X_3-1}{k}.$$枚举 ,将二元序列数乘上放回 的方案数并求和即可。
组合数中的最大上标不超过 ,预处理阶乘与逆阶乘后,每项可以 求出。
正确性证明
删除所有 后,原序列唯一对应于一个二元序列 ,以及每个空隙中被删除的 的个数。若 的一个相邻位置由 切换为 或由 切换为 ,该空隙必须非空;否则原序列会出现禁止的相邻对。反之,只要所有切换空隙非空,原序列中所有相邻元素之差都不超过 。所以固定 后,隔板法给出的数量既无遗漏也无重复。
一个恰有 次切换的二元序列恰有 个非空同色段。奇偶两种公式分别枚举首尾异色与首尾同色的全部可能,并用正整数拆分组合数确定各段长度,因此也无遗漏、无重复。对所有可行的 求和即得到全部合法序列数。
复杂度
预处理阶乘为 ,枚举切换次数为 ,空间复杂度为 。
- 1
信息
- ID
- 1022
- 时间
- 2000ms
- 内存
- 512MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者