#1896. 归途与征程

归途与征程

题目描述

"感谢你们来访 Nescafe\red{Nescafe }之塔,封印的能量会在两天之内完全被贮存在神杯之中,你们 也该回去了。"

"不过圣主,我们还有一个问题。难道……Nescafe\red{Nescafe }就这样被封印成一座神杯,保存在 塔中了吗?"

"也许吧。谁知道呢?或许来年的秋天会有有识之士来开启它呢……"

"有识之士?他是谁?"

"如果有这样几个人,那他们一定来自忘川沧月家族的 10\red{10 }个孩子!他们……也该踏上 征程了……"

"是这样……祝福他们吧……圣主您多保重,我们探险队要走了。"

"一路平安……不过走之前我还给你们留了一份纪念品呢~"

"纪念品?这是!@#$% ˆ&()_+......\red{ \sim !@ \# \$ \% \^\ \&*() \_ +......}一道题!"

给出一个长度为 N\red{N }的由小写字母’a\red{a}\red{\sim}z\red{z}’和’\red{*}’组成的字符串 A\red{A,}一个长度为 M\red{M }的仅由小 写字母’a\red{a}’~’z\red{z}’组成的字符串 B\red{B}。一个’\red{*}’可以匹配任意多个字符(包括 0\red{0 }个)。求在 B\red{B }的所有 循环同构串中,有多少个能够与 A\red{A }匹配。

循环同构串:就是把 B\red{B }的前 k\red{k }个字母(0<=k<M)\red{(0<=k<M)}移到结尾所得到的字符串。例如 abc\red{abc }的 循环同构串有 abc\red{abc}bca\red{bca }cab\red{cab}

A\red{A }B\red{B }匹配:若除了 A\red{A }中的’\red{*}’号可以匹配 B\red{B }中的任意多个字符外,其余字符一一对应, 则称 A\red{A }B\red{B }匹配。例如 abc\red{a*b*c }aadbc\red{aadbc }是匹配的,其中第一个\red{*}对应 ad\red{ad,}第二个\red{*}对应空串。

输入格式

第一行为字符串 A\red{A}

第二行为字符串 B\red{B}

输出格式

输出在 B\red{B }的所有循环同构串中,有多少个能够与 A\red{A }匹配。

样例

输入样例1

aaaa
aaaa

输出样例1

4

输入样例2

a*a
aaaaaa

输出样例2

6

输入样例3

*a*b*c*
abacabadabacaba

输出样例3

15

提示

对于 30%\red{30\% }的测试点,M\red{M≤}20\red{20}

对于 80%\red{80\% }的测试点,M\red{M≤}200\red{200}

对于 100%\red{100\% }的测试点,1<=N<=100\red{1<=N<=100,}1\red{1≤}M\red{M≤}100000\red{100000}