被 nums=[63] k=93 用例给卡了
class Solution {
public:
long long countGood(vector<int>& nums, int k) {
map<int,int>m;
m[nums[0]]=1;
long l=0,r=0,n=nums.size(),t=0,ans=0;
while(l<n){
if(t>=k){
ans+=n-r;
t -= --m[nums[l++]];
}else{
if(r>=n-1)break;//之前是(r>=n)导致下面越界了 我试了试加1个特判nums的大小是1返回0也可以过
t += m[nums[++r]]++;//越界了...
}
}
return ans;
}
};