最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

信息学奥赛题库- 敲键盘

C++ 少儿编程 1176浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

【题目描述】

给定一个字符串集合$P$,集合中所有的字符串都仅由$26$个小写英文字母组成。

现在$A$君会在键盘上不停地输入字符,字符按顺序组成字符串$T$。当P中的任意一个字符串$S_i$成为了$T$的子串后$A$君就会停止输入。

现在假定$A$君每次输入的字符都是在$26$个小写英文字母中等概率随机选择的,那么请你告诉他,当他停止输入时T的期望长度是多少。

若答案为$frac{a}{b}$ ,则你输出结果在模$10^9+7$意义下的值即可。

【输入】

第一行一个整数$T$表示数据组数。

每组数据第一行一个整数$n$表示集合$P$中的字符串数量。

接下来$n$行每行一个字符串,表示$P$中字符串$S_i$。

【输出】

每组数据输出一行一个整数表示答案。

【输入样例】

4
1
aa
1
ab
2	
ab
ac
3
ab
bc	
dba

【输出样例】

702
676	
338
917471236

【提示】

【数据规模】

对于40%的数据:$n=1$;

对于100%的数据:$1≤T≤50,1≤n≤15,|S_i|≤10$。

您必须 登录 才能发表评论!