Menu
CoddyTech

Partition Labels

소문자로 이루어진 문자열 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 뒤에 옵니다. 각 부분은 같은 문자로 시작하고 끝나므로 더 이상 자를 수 없습니다.

lock icon제출 시 숨은 테스트 +14개

코드 초기화
def partitionLabels(s):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

s = "abacdcefe"

기대값

[3, 3, 3]