|
||||||||||
Another MeaningTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 2568 Accepted Submission(s): 1206 Problem Description As is known to all, in many cases, a word has two meanings. Such as ¡°hehe¡±, which not only means ¡°hehe¡±, but also means ¡°excuse me¡±. Today, ?? is chating with MeiZi online, MeiZi sends a sentence A to ??. ?? is so smart that he knows the word B in the sentence has two meanings. He wants to know how many kinds of meanings MeiZi can express. Input The first line of the input gives the number of test cases T; T test cases follow. Each test case contains two strings A and B, A means the sentence MeiZi sends to ??, B means the word B which has two menaings. string only contains lowercase letters. Limits T <= 30 |A| <= 100000 |B| <= |A| Output For each test case, output one line containing ¡°Case #x: y¡± (without quotes) , where x is the test case number (starting from 1) and y is the number of the different meaning of this sentence may be. Since this number may be quite large, you should output the answer modulo 1000000007. Sample Input
Sample Output
Hint In the first case, ¡° hehehe¡± can have 3 meaings: ¡°*he¡±, ¡°he*¡±, ¡°hehehe¡±. In the third case, ¡°hehehehe¡± can have 5 meaings: ¡°*hehe¡±, ¡°he*he¡±, ¡°hehe*¡±, ¡°**¡±, ¡°hehehehe¡±. Author FZU Source | ||||||||||
|