functionminimumDifference(nums:number[], k:number):number{let min =Infinity;
nums.sort((a, b)=> a - b)for(let i =0; i + k <= nums.length;++i){
min = Math.min(nums[k -1+ i]- nums[i], min)}return min
};
functioncountGoodSubstrings(s:string):number{let len = s.length;let ans =0;//记录最后结果for(let i =0; i <= len -3; i++){let temp =newMap();for(let j = i; j < i +3; j++){if(!temp.has(s[j])){
temp.set(s[j],1);}}if(temp.size ==3){
ans +=1;}}return ans;}
functionlongestBeautifulSubstring(word:string):number{let left =0;let right =0;let ans =0;// 当前的字母是哪个,初始值为 -1let index =-1;const map ={"a":0,"e":1,"i":2,"o":3,"u":4};while(right < word.length){const char = word[right];const newIndex = map[char];if(newIndex === index +1){// 可以追加的时候更新if(index ===-1){
left = right;}
index = newIndex;}elseif(newIndex !== index){// 不满足条件的时候重置状态
index = newIndex ===0?0:-1;
left = right;}while(word[right +1]=== word[right]&& right < word.length){
right++;}// 如果走到 u 了,可以更新 ansif(index ===4){
ans = Math.max(ans, right - left +1);}
right++;}return ans;};