计算满足与自身所有循环排列均存在某一位置字符相同的单词数量
计算满足与自身所有循环排列均存在某一位置字符相同的单词数量
嘿,这是个挺有意思的组合计数问题,先把定义和例子给你理清楚:
设 $a(m,n)$ 表示长度为 $m$、取自包含 $n$ 个字母的字母表的单词 $W$ 的数量,这类单词的核心性质是:它的每一个循环排列,都能和原单词 $W$ 在至少一个位置上找到相同的字母。
给你两个直观的例子帮你理解:
- 单词
aabcb是符合条件的(当 $m=5$ 且字母表大小 $n\ge3$ 时):它的所有循环排列分别是baabc、cbaab、bcbaa、abcba,这些排列各自在第2位、第5位、第3位、第1位和原单词的对应位置字母完全一致。 - 但单词
aabbc就不符合要求,因为它的某个循环排列bcaab和原单词在每一个位置上的字母都不相同,完全没有重合的位置。
目前已经有一些小的 $m$ 和 $n$ 对应的 $a(m,n)$ 取值记录,要是想推导通用的计算公式,一般会用到容斥原理或者组合数学里和循环群相关的技巧来分析~
备注:内容来源于stack exchange,提问作者Tom Wilde
相关产品推荐
相关产品推荐

