#2841. 3846. ZCC loves words

3846. ZCC loves words

#3846. ZCC loves words

题目描述

ZCC's English is so poor that his teacher GPS forced him to memorize words. In order to examine ZCC, GPS created a software. This software works as follow. A user inputs a string S which only consists of uppercase into this software, then the software calculates the score which string S has by using its strange methods.Initially the software stores n different words and the initial score is 1. The length of S is L. The chars of string S is labeled from 1 to L(left to right), and S[i] represent the i-th char of S.

// Prime[k] means the k-th prime number, such as Prime[1]=2, Prime[2]=3 ,Prime[8]=19.

Input >> S

Score = 1

For i = 1 to L do

For k=1 to n do

If S[j..i] equals to Word[k]

Score = Score * Prime[k] * ( i * 2 - j + 1 )

Output << Score

The pseudocode above shows when input S what score we can get.

If n=2,L=3,Word[1]="AB",Word[2]="BB" then

Score[ABB] = 1 * ( 2 * 2 - 1 + 1 ) * Prime[1] * ( 3 * 2 - 2 + 1 ) * Prime[2],

Score[CBA] = 1,

Score[CAB] = 1 * ( 3 * 2 - 2 + 1 ) * Prime[1];

ZCC has found a BUG which can help him to input strings into the software as much as he can. And the score he gets in the end is the sum of the score he gets in each input.ZCC wants to know the score he will get in the end, if he input all the different strings into the software. That is to say if the length of string is L, he can input 26^L strings in all. The answer can be very large, so what ZCC actually want is the ans Mod 5047621.

输入格式

The input contains several test cases.Two integers N(1≤N≤40),L(1≤L≤10^17) will exist in the first line of each input, indicating the number of words and the length of each S you can input to the software. Next n line contains n words, the i-th line means Word[i].Let Len[i] be the length of Word[i], and Len[1]+Len[2]…+Len[n]<=40.

输出格式

For each test case, output the score Mod 5047621.

样例

样例输入

2 3  

AB  

BB  

4 1  

A  

B  

C  

D  

1 2  

A  

3 3  

ZZ  

ZZA  

ZZZ

样例输出

Case #1: 18894  

Case #2: 56  

Case #3: 899  

Case #4: 20511

数据范围与提示

For the second test case, all the 4 words can be got. So score is (12-1+1)(2+3+5+7)+22.

5047621=179173163