395. Longest Substring with At Least K Repeating Characters
class Solution:
def longestSubstring(self, s: str, k: int) -> int:
if len(s) < k:
return 0
for c in set(s):
# 若某个字符c的个数大于0且小于k,那么包含它的子串必然不符合要求,
# 所以用它将字符串分成若干个子串转化为子问题,递归求解
if s.count(c) < k:
return max(self.longestSubstring(t, k) for t in s.split(c))
return len(s)