自动机上状压dp,把单词是否存在压成二进制位注意这里面某些单词会包含其他单词,所以某些自动机上有些状态点对应多个二进制位方案只要再顺着有方案的状态搜一遍即可 ..,'a'..'z'] of longint; f,q,v:..] of longint; ans:..] of string; dp:..,..,..] of int64; t,k,i,j,n,m,l:longint; c:char; s:string; function calc(n:longint):int64; var i:lon…