Codeforces 86 C 题意:给\(m\)个串,要构造长度为\(n\)的串,而且必须由这些模式串们覆盖(可以重复),问可以构造多少种. 思路:首先构造AC自动机,然后\(dp(i,j,k)\)表示现在到了要构造的串的第\(i\)位,匹配到了AC自动机的第\(j\)个节点,最后\(k\)位还未被覆盖的种数. 转移方程:如AC自动机的第\(j\)个节点是某个模式串的结尾且这个模式串的长度大于\(k\),那么 \(dp(i+1,nxt_j^c,0)+=dp(i,j,k)\),否则\(dp(i+…