【题解】ARC100D Colorful Sequences | 20211215 模拟赛 序列【DP】

题目链接

题目链接

题意

定义一个序列是彩色的当且仅当其有一个子段为 \(k\) 的排列。问所有长度为 \(n\),值域为 \(k\) 的彩色序列中序列 \(a\) 作为子串出现了多少次。\(n\leq 25000,k\leq 400\)

题解

先特判 \(a\) 是彩色的情况。接着考虑 \(a\) 互不相同的情况,设 \(f_{i,j}\) 为长为 \(i\) 的序列最近 \(j\) 个数不同的方案数,相应记录 \(g\) 代表互不相同的长为 \(|a|\) 的段出现的次数。所有等长度的互不相同的段出现次数一样,所以答案要除掉一个下降幂。若 \(a\) 有相同,分 \(a\) 往左往右扩展来 DP。

知识共享许可协议
若文章内无特别说明,公开文章采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
原文地址:https://www.cnblogs.com/wallbreaker5th/p/15695797.html