|
|
特殊性质模拟即可,时间复杂度 $O(\sum |s_i|)$,期望得分 $10$。 $n\le 12$考虑状态压缩 dp,设 $f_{i,S}$ 表示将集合 $S$ 中的所有串插入到一个深度为 $i$ 的节点的方案数。 使用枚举子集的方式分裂 $S$ 到 $i+1$ 去转移,时间复杂度 $O(3^n|s_i|)$。貌似可以用高维前缀和优化到 $O(2^n|s_i|n)$。期望得分 $50$。 $n\le 20$正解和特殊性质关系不大。个人觉得正解要比特殊性质好写。 不难发现,若确定了每个字符串 $s_i$,则字典树的节点个数为: $$\sum_{S}(-1)^{|S|-1}\text{LCP}(S)$$ 其中 $\text{LCP}(S)$ 表示集合 $S$ 中所有字符串的最长公共前缀。 好的,若 $s_i$ 未确定,如何计算 $\text{LCP}(S)$其实非常简单?枚举最长公共前缀的长度 $i$,只需要保障前 $i$ 位相同,第 $i+1$ 位不相同即可,时间复杂度为 $O(2^n|s_i|)$,期望得分 $100$。
题目4299 学姐的下午茶
AAAAAAAAAA
3
评论
2026-02-07 15:38:59
|