1
class Solution:
2
def partitionLabels(self, s: str) -> List[int]:
3
d = defaultdict(list)
4
for i, char in enumerate(s):
5
d[char].append(i)
6
nums = []
7

8
for v in d.values():
9
nums.append([v[0], v[-1]])
10

11
start = nums[0][0]
12
maxIndex = nums[0][1]
13
ans = []
14
for i in range(1, len(nums)):
15
if nums[i][0] <= maxIndex:
16
maxIndex = max(maxIndex, nums[i][1])
17
else:
18
ans.append(maxIndex - start + 1)
19
start = nums[i][0]
20
maxIndex = nums[i][1]
21
ans.append(maxIndex - start + 1)
22
# print(ans)
23
return ans

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0