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
#include <iostream>
using namespace std;

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

inline bool jestBlok(char a, char b, char c) {
	bool b1 = jestSamogloska(a), b2 = jestSamogloska(b), b3 = jestSamogloska(c);
	return ((b1 && b2 && b3) || (!b1 && !b2 && !b3));
}

int main() {
	ios_base::sync_with_stdio(false);
	string str;
	cin >> str;
	size_t strLen = str.length();
	if (strLen < 3) {
		cout << 0 << endl;
		return 0;
	}
	long long ostatniLicznik = 0, wynik = 0;
	char a = str[0], b = str[1], c = str[2];

	for (size_t i = 2; i < strLen; i++) {
		if (jestBlok(a, b, c))
			ostatniLicznik = i-1;
		wynik += ostatniLicznik;
		a = b; b = c; c = str[i+1];
	}
	cout << wynik << endl;
	return 0;
}