专栏文章

题解:UVA11488 Hyper Prefix Sets

UVA11488题解参与者 3已保存评论 2

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
2 条
当前快照
1 份
快照标识符
@miqf0qrq
此快照首次捕获于
2025/12/04 03:44
3 个月前
此快照最后确认于
2025/12/04 03:44
3 个月前
查看原文

题意概述

nn 个字符串,求公共子串长度与所选字串个数积的最大值。

前置知识

字典树,请移步 P8306

Solution

看到前缀公共长度可以想到用字典树。
然后考虑怎样取才能使得字符串的公共长度和所选字符串成乘积最大。
想到从字典树上每个点的贡献值:
resi=cnti×depires_i=cnt_i\times dep_i
depidep_i 代表当前点在字典树的深度。
cnticnt_i 表示以根到 ii 为前缀的字符串的个数。
显然我只需要从根节点从上往下遍历字典树,把每个点的贡献值算出来,维护贡献的最大值即可。

评论

2 条评论,欢迎与作者交流。

正在加载评论...