LeetCode 3325.字符至少出现K次的子字符串 I
题目:
给你一个字符串 s
和一个整数 k
,在 s
的所有子字符串中,请你统计并返回 至少有一个 字符 至少出现 k
次的子字符串总数。
子字符串 是字符串中的一个连续、 非空 的字符序列。
思路:
代码:
class Solution {public int numberOfSubstrings(String s, int k) {char[] ch = s.toCharArray();int n = ch.length;int left = 0;int ans = 0;int[] cnt = new int[26];for (char c : ch) {cnt[c - 'a']++; while (cnt[c - 'a'] >= k) {cnt[ch[left] - 'a']--;left++;}ans += left;}return ans;}
}
性能: