1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<cstdio>
#include <iostream>
#include<string>
using namespace std;
#define REP(x, n)  for(int x = 0; x < n; x++)
#define PB push_back
#define LL long long
#define MAX 200003;
#define FORD(x,b,e) for(int x = b; x >= e; x--)


bool is_zero(char a){
	return a == 'a' || a == 'e' || a =='o' || a == 'u' || a == 'y' || a == 'i';
}

int main() {
	LL wynik = 0;
	string word;
	// std::getline(std::cin, word);
	cin>>word;
	// scanf("%s", &word);
	// cout<<word<<endl;
	int ln = word.length();
	// cout<<ln<<endl;
	int start = 0;

	for(int x = 2; x < ln; x++){
		if (is_zero(word[x-2]) == is_zero(word[x-1]) &&  is_zero(word[x-1])== is_zero(word[x])){
			// cout<<word[x-2]<<word[x]<<word[x]<<endl;

			wynik += (x-start-1) * (ln - x);
			// cout<<x<< " "<<x-start-1<<" "<<ln-x<< " "<< wynik <<" " << x - 1<<endl;
			start = x - 1; 
		}
	}

	cout<<wynik<<endl;


	return 0;
}