题目描述: | 乌龟得到了他的基因组,一个只包含“ATCG”四种字母的字符串。乌龟想起科学家说,基因组中很多片段都多次重复出现,而且这种重复是很有意义的,于是他想计算一下自己基因组里片段的重复情况。 给定一个基因组,其中一个长度为k的子串称为一个“k-片段”。乌龟希望你计算出基因组中不同的k-片段数量。例如,基因组“TACAC”的2-片段有“TA” ,“AC”,“CA”,“AC”,其中不同的片段数量有3个。 |
输入: | 整数n,k,R1,表示基因组的长度,片段的长度和数列生成的首项。基因组第i(1 in)个字符在Ri mod 4的值为0,1,2,3时分别为A, T,C,G
试题中使用的生成数列R定义如下:整数0≤R1<201701在输入中给出。对于i> 1,Ri =(Ri-1×6807 + 2831)mod 201701。 |
输出: | 一个整数,表示不同的k-片段的数量 |
样例输入: | 20 2 37 |
样例输出: | 10 |
提示: | 数据规模 30%的数据满足n≤10; 100%的数据满足1≤n≤15,1≤k≤10; 来源 2017江苏省青少年信息学奥林匹克小学组竞赛复赛 |
来源: | 省赛 |
解答: | 省赛 |