ぽかぽかの星 题解

· · 题解

这里仅介绍 100\% 的方法。

考虑我们把一个有序的定长度序列 a_i 转换为每个数出现的次数 c_i。那么我们就只用考虑第二个限制了。

考虑到 k 的奇偶性对公式有影响,故分开讨论。

\bm k 为偶数时,\bm {k=2m}.

那么 c_i,c_{k+1-i} 至少有一个为 0。实际上,我们可以把这一些 c_i,c_{k+1-i} 分为一组,一共 m 组。

枚举 m 组当中有不为零的组数 i。可以发现这样子有 C_m^i\times C_{n-1}^{i-1}\times 2^i。这里的三项分别表示

所以答案就是

\sum_{i=1}^{\min(n,m)}C_m^i\times C_{n-1}^{i-1}\times 2^i

\bm k 为奇数时,\bm {k=2m+1}.

同偶数的情况,唯一不同的就是要特殊讨论 c_{m+1} 处,至多为 1。从 c_{m+1}=0/1 的角度出发同上处理可得答案。

\sum_{i=1}^{\min(n,m)}C_m^i\times C_{n-1}^{i-1}\times 2^i+\sum_{i=1}^{\min(n-1,m)}C_m^i\times C_{n-2}^{i-1}\times 2^i

upd (2022.7.10) 记得特判 n/k=1 的情况。