2405. Optimal Partition of String
Return the minimum number of substrings in such a partition
이 조건을 제대로 파악 못해서 삽질했다. 문제를 제대로 읽자.
파티션의 최소 문자열 수를 얻기 위해선, 문자열s
를 순회하며 중복된 문자(character)가 나올 때 마다 문자열을 끊어주면 된다.
class Solution:
def partitionString(self, s: str) -> int:
partitioned_string = set()
minimum_substrings = 0
for c in s:
if c in partitioned_string:
partitioned_string.clear()
minimum_substrings += 1
partitioned_string.add(c)
return minimum_substrings + 1
O(N)
O(1)