摘要: 考虑l=1,r=n的68分,对S和T建SAM,对T的SAM上的每个节点,计算它能给答案带来多少贡献。 T上节点x代表的本质不同的子串数为mx[x]-mx[fa[x]],然后需要去掉所代表子串与S的最长公共子串的长度。 从1到length(T)扫一遍,SAM基本操作求出每个前缀与S的最长公共子串。 答 阅读全文
posted @ 2019-01-06 18:29 HocRiser 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 不要以为用上Stirling数就一定离正解更近,FFT都是从DP式本身出发的。 设f[i]为i个积木的所有方案的层数总和,g[i]为i个积木的方案数,则答案为$\frac{f[i]}{g[i]}$ 转移枚举第一层是哪些积木:$$f_n=g_n+\sum_{i=1}^{n}\binom{n}{i}f_ 阅读全文
posted @ 2019-01-06 07:49 HocRiser 阅读(174) 评论(0) 推荐(0) 编辑