CF700E Cool Slogans
题目描述
Bomboslav 创建了一家品牌策划公司,现在正在帮助企业设计新标志和广告口号。对于本题而言,公司的口号应是其名称的任意非空子串。例如,如果公司名称为 "hornsandhoofs",那么 "sand" 和 "hor" 都可以作为口号,而 "e" 和 "hornss" 则不可以。
有时公司会进行品牌重塑并更换口号。当口号 $A$ 至少包含口号 $B$ 两次(这些出现可以重叠)作为子串时,称口号 $A$ 比口号 $B$ 更酷。例如,口号 $A = $ "abacaba" 比口号 $B = $ "ba" 更酷,口号 $A = $ "abcbcbe" 比口号 $B = $ "bcb" 更酷,但口号 $A = $ "aaaaaa" 并不比口号 $B = $ "aba" 更酷。
现给定公司名称 $w$,请你帮助 Bomboslav 确定最长的口号序列 $s_1,s_2,\dots,s_k$ 的长度,使得每个口号(除了第一个)都比前一个更酷。
输入格式
第一行输入一个整数 $n$($1 \leq n \leq 200000$),表示请求 Bomboslav 帮忙的公司名称的长度。
第二行输入一个长度为 $n$ 的字符串 $w$,由小写英文字母构成。
输出格式
输出一个整数,表示公司名称 $w$ 所能组成的口号序列的最大长度,要求序列中的任意一个口号(除了第一个)都比上一个更酷。
说明/提示
由 ChatGPT 5 翻译