Menu
CoddyTech

Partition Labels

中等贪心哈希python iconjava iconcpp iconc iconjs icon+10

你会得到一个由小写字母组成的字符串 s。将它切分成尽可能多的连续部分,使每个字母只出现在一个部分中:如果某个字母出现在一个部分中,那么它的所有副本都必须在这个部分中。按从左到右的顺序返回各部分的长度。

函数

partitionLabels(s: string) → integer-array
sstring
要截取的字符串,只包含小写字母
返回值integer-array
每个部分的长度,从左到右

约束条件

  • 1 ≤ s.length ≤ 5 × 104
  • s 中只包含小写英文字母。
  • 这些部分保持原来的顺序,合在一起构成整个 s,所以它们的长度之和等于 s.length。

示例

输入
s = "abacdcefe"
输出
[3, 3, 3]
解释
a 位于 0 和 2,c 位于 3 和 5,e 位于 6 和 8。因此,切分位置在 aba 和 cdc 之后,并且没有任何部分可以再次切分。
重置代码
def partitionLabels(s):
    # 在这里编写代码

测试 #1

测试 #2

测试 #3

参数

s = "abacdcefe"

预期输出

[3, 3, 3]