Find K-Length Substrings With No Repeated Characters

给一个String和一个整数k, 返回k长度的没有重复字符的substring.

这题就是先找所有的没有重复字符substring, 然后看长度是不是k.

class Solution {
public:
    int numKLenSubstrNoRepeats(string S, int K) {
        int res = 0;
        unordered_map<char, int> map;
        for(int i = 0; i < S.size(); i++) {
            if(i < K){// find all substring with non-repeacted chars
                map[S[i]]++;
            }else{
                map[S[i]]++;
                map[S[i-K]]--;
                if(map[S[i-K]] == 0)
                    map.erase(S[i-K]);
            } 
            if(map.size() == K) // substring length == K
                res++;
        }
        return res;
    }
};