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 <stdio.h>
#include <string>
#include <vector>
#include <iostream>

typedef long long int llint;

std::string s;

bool is_samo(int i)
{
	char c=s[i];
	return
		c=='a'||
		c=='e'||
		c=='i'||
		c=='o'||
		c=='u'||
		c=='y';
}

bool is_difficult(int i)
{
	bool b0=is_samo(i);
	bool b1=is_samo(i+1);
	bool b2=is_samo(i+2);
	return b0==b1&&b1==b2;
}

int main()
{
	std::cin>>s;
	int len=(int)s.size();
	if(len<3){std::cout<<0;return 0;}
        llint res=0;
	llint ret=0;
	for(int i=len-3;i>=0;--i)
		ret+=(res=is_difficult(i)?(len-i-2):res);
	std::cout<<ret;
	return 0;
}