你现在需要设计一个密码 S,S 需要满足:
S 的长度是 N;
S 只包含小写英文字母;
S 不包含子串 T;
例如:abc 和 abcde 是 abcde 的子串,abd 不是 abcde 的子串。
请问共有多少种不同的密码满足要求?
由于答案会非常大,请输出答案模 109+7 的余数。
输入格式
第一行输入整数N,表示密码的长度。
第二行输入字符串T,T中只包含小写字母。
输出格式
输出一个正整数,表示总方案数模 109+7 后的结果。
数据范围
1≤N≤50,
1≤|T|≤N,|T|是T的长度。
输入样例1:2 a
输入样例3:50 czknojandoasndaskdnaklsndasakdnaslkdn
输出样例3:83616752
代码
#include<bits/stdc++.h>
using namespace std;
long long t[51][27],g=1e9+7,f[51];
long long qmi(long long a, long long b) {//快速幂
long long d = 1;
while (b) {
if (b & 1) d = (d * a) % g;
a =