Loading

abc266G 题解

能评到空心黄是不是只是因为位置原因啊。

真心只有 *1800 左右罢。


题意:对满足以下要求的序列计数:

  • R,G,B 组成,其中恰 \(R\)R\(G\)G\(B\)B
  • 连续的 RG 作为子串恰出现 \(K\) 次” 。
  • \(998244353\) 输出。

这里的连续 RG 好突兀啊,能不能直接枚举?

但是恰好怎么做,反演还是容斥?

先想想钦定 \(k\)RG 怎么做罢:把 RGB 分别看成分隔符,然后试着往里插剩余 RG

\(n=R-K,m=G-K,k=C+K\),则我们要统计 \(n\)R \(m\)G 分成 \(k+1\) 段的方案数。无重复自然最好,有重复再想方法。

不能形成连续 RG,一个被分隔符分隔的区间必须是前面一段 R 连后面一段 G 的形式。

那么,只要知道一个区间内 RG 的个数,就能唯一确定区间的排列方式。

RG 分别计算,这不就是一个小组合问题。

这时看回要求,开头的 R 显然不会参与与分隔符凑成 RG,等等结尾的 G 好像也不会?

每个符合要求的序列忽略分隔符排列后都能唯一对应到 RG 分配到不同区间的个数,而后者一定合法,那么前后一一对应,直接计不就完了!

分隔符有 \(\binom{k}{C}\) 种排法,R\(\binom{n+k}{k}\) 种排法,G\(\binom{m+k}{k}\) 种排法,乘一起就是答案。

代码不给了,很好写。注意组合数预处理要处理两倍数据范围。

事实上,前面那句“先想想钦定 \(k\)RG 怎么做”的缘由是我开始往二项式反演想了一段。

posted @ 2022-10-26 20:05  purplevine  阅读(23)  评论(0编辑  收藏  举报