Problem · String

Vowel Substring

MediumSnowflakeINTERNOA
See Snowflake hiring insights

Given a string of lowercase letters in the range ascii[a-z], determine the number of substrings that can be created where every letter is a vowel and every vowel is present at least once. The vowels are ['a', 'e', 'i', 'o', 'u']. A substring is a contiguous group of characters in the string.

Function Description

Complete the function vowelSubstring in the editor.

vowelSubstring has the following parameter(s):

  1. 1. string s: a string

Returns

int: the number of substrings that consist of vowels only ('a', 'e', 'i', 'o', 'u') where every vowel appears at least once

🌷ଓ Credit where it's due – A!˶ᵔ ᵕ ᵔ˶ ᯓᡣ𐭩

Examples
01 · Example 1
s = "aaeiouxa"
return = 2

There are two qualifying substrings:

s[0:5] = "aaeiou"

s[1:5] = "aeiou"

02 · Example 2
s = "axyzaeiou"
return = 1

There is only one qualifying substring:

s[4:8] = "aeiou"

Constraints
  • 1 ≤ size_of(s) ≤ 10^5
  • s[i] ∈ ascii[a-z] (where 0 ≤ i < size_of(s))
  • More Snowflake problems
    drafts saved locally
    public int vowelSubstring(String s) {
      // write your code here
    }
    
    s"aaeiouxa"
    expected2
    checking account