Input: s = "abciiidef", k = 3
Output: 3
Explanation: The substring "iii" contains 3 vowel letters.
Input: s = "aeiou", k = 2
Output: 2
Explanation: Any substring of length 2 contains 2 vowels.
Input: s = "leetcode", k = 3
Output: 2
Explanation: "lee", "eet" and "ode" contain 2 vowels.
Input: s = "rhythms", k = 4
Output: 0
Explanation: We can see that s doesn't have any vowel letters.
Input: s = "tryhard", k = 4
Output: 1
class Solution {
public int maxVowels(String s, int k) {
int vowelCount = 0, i = 0;
for (; i < k; i++)
if (isVowel(s.charAt(i)))
vowelCount++;
int maxCount = vowelCount;
for (; i < s.length(); i++) {
if (isVowel(s.charAt(i)))
vowelCount++;
if (isVowel(s.charAt(i - k)))
vowelCount--;
maxCount = Math.max(maxCount, vowelCount);
}
return maxCount;
}
public boolean isVowel(char c) {
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
return true;
return false;
}
}