设S是一个长度为n的非空字符串,其中的字符各不相同,则其互异的非平凡子串(非空且

练习题库2022-08-02  41

问题 设S是一个长度为n的非空字符串,其中的字符各不相同,则其互异的非平凡子串(非空且不同于S本身)个数为(  )。A.2n-1B.n2C.n(n+1)/2D.(n+2)(n-1)/2

选项 A.2n-1
B.n2
C.n(n+1)/2
D.(n+2)(n-1)/2

答案 D

解析 比如S字串为“abcdefg”,长度为7,则S中的包含的互不相同的字串有如下一些:
1.长度为6的个数为2:“abcdef”和“bcdefg”
2.长度为5的个数为3:“abcde”,“bcdef”,“cdefg”
.
3.长度为1的个数为7:“a”,“b”,“c”,“d”,“e”,“f”,“g”
个数总和就是2+3+4+5+6+7=(2+7)×(7-2+1)/2
同理,字符串长度为n,一个字符的字符串个数为n,除原字符串外最长的字符串为n-1个字符,个数有2个,按照推理,共有:2+3+……+n=(2+n)(n-1)/2个。
其中:
等差数列{an}的通项公式为:an=a1+(n-1)d。
前n项和公式为:Sn=n×a1+n(n-1)d/2或Sn=n(a1+an)/2。
转载请注明原文地址:https://tihaiku.com/congyezige/2410469.html

最新回复(0)