点击打开链接
class Solution {
public:
vector<int> findAnagrams(string s, string p) {
if(s.empty()) return {};
vector<int> ret, cnt(30,0);
int ns = s.size();
int np = p.size(),i=0;
for(auto c: p) ++cnt[c-'a'];
while(i<ns){
bool success = true;
vector<int> tmp = cnt;
if(i+np<=ns)
{
for(int j=i; j<i+np; j++){
if(--tmp[s[j]-'a']<0){
success = false;
break;
}
}
if(success){
ret.push_back(i);
}
}
i++;
}
return ret;
}
};