力扣1358.包含所有三种字符的子字符串数目
- 遍历左端点 找到最小的子字符串
- class Solution {
- public:
- int numberOfSubstrings(string s) {
- unordered_map<char,int> cnt;
- int n = s.size(),res=0,count=3;
- for(int i=0,j=0;j<n;j++)
- {
- if(!cnt.count(s[j])) count--;
- cnt[s[j]] ++;
- while(!count)
- {
- res += n - j;
- if(--cnt[s[i]] == 0)
- {
- count++;
- cnt.erase(s[i]);
- }
- i++;
- }
- }
- return res;
- }
- };
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |