M 行诗歌计数:字母 'ei' 与句子类型
根据题目要求,我们可以得出以下结论:
-
所有字母等于 'ei' 的行必须以同一类型的句子结尾。也就是说,如果有多行字母等于 'ei',那么它们的结尾句子类型必须相同。
-
不同 'ei' 值的行必须以不同的类型的句子结尾。也就是说,如果两行字母的 'ei' 值不同,那么它们的结尾句子类型也必须不同。
-
同一种类型结尾但是不同句子属于不同情况。也就是说,假设有两行以相同类型的句子结尾,但是这两行的句子不同,那么它们属于不同的情况。
-
诗歌顺序交换属于不同情况。也就是说,如果有多行字母等于 'ei',它们的顺序不同,那么它们属于不同的情况。
基于以上结论,我们可以得出如下推导:
对于每个 'ei' 值,我们需要找到满足条件的结尾句子类型的数量。假设有 m 个 'ei' 值,那么我们需要找到 m 个不同的句子类型。
首先,我们需要确保每个 'ei' 值都有一个不同的句子类型。可以用一个集合来存储已经使用的句子类型,然后遍历 'ei' 值,将未使用的句子类型分配给对应的 'ei' 值。
然后,我们需要找到剩下的句子类型数量。可以用变量 N 表示总的句子类型数量,用变量 n 表示已经使用的句子类型数量,那么剩下的句子类型数量为 N-n。
最后,我们需要计算每个句子类型的情况数。根据题目要求,同一种类型结尾但是不同句子属于不同情况。所以第 i 种句子类型的情况数为 count[i]。假设已经找到的句子类型数量为 n,那么总的情况数为 count[1] * count[2] * ... * count[n]。
综上所述,我们可以通过以上步骤计算出总的情况数。
原文地址: https://www.cveoy.top/t/topic/qz55 著作权归作者所有。请勿转载和采集!