给你一个字符串 s,按照以下步骤将其分割为 互不相同的段 

返回字符串数组 segments,其中 segments[i] 表示创建的第 i 段。

 

示例 1:

输入: s = "abbccccd"

输出: ["a","b","bc","c","cc","d"]

解释:

下标 添加后的段 已经出现过的段 当前段是否已经出现过? 新段 更新后已经出现过的段
0 "a" [] "" ["a"]
1 "b" ["a"] "" ["a", "b"]
2 "b" ["a", "b"] "b" ["a", "b"]
3 "bc" ["a", "b"] "" ["a", "b", "bc"]
4 "c" ["a", "b", "bc"] "" ["a", "b", "bc", "c"]
5 "c" ["a", "b", "bc", "c"] "c" ["a", "b", "bc", "c"]
6 "cc" ["a", "b", "bc", "c"] "" ["a", "b", "bc", "c", "cc"]
7 "d" ["a", "b", "bc", "c", "cc"] "" ["a", "b", "bc", "c", "cc", "d"]

因此,最终输出为 ["a", "b", "bc", "c", "cc", "d"]

示例 2:

输入: s = "aaaa"

输出: ["a","aa"]

解释:

下标 添加后的段 已经出现过的段 当前段是否已经出现过? 新段 更新后已经出现过的段
0 "a" [] "" ["a"]
1 "a" ["a"] "a" ["a"]
2 "aa" ["a"] "" ["a", "aa"]
3 "a" ["a", "aa"] "a" ["a", "aa"]

因此,最终输出为 ["a", "aa"]

 

提示: