#include <iostream>
#include <string>
using namespace std;
bool samogloska[150];
int ilekonczyna[200000];
int main() {
samogloska['a'] = true;
samogloska['o'] = true;
samogloska['u'] = true;
samogloska['i'] = true;
samogloska['e'] = true;
samogloska['y'] = true;
ios::sync_with_stdio(false);
cin.tie(nullptr);
string a;
cin >> a;
ilekonczyna[1] = 0;
long long int result = 0;
int i = 2;
int size = a.length();
while(i < size) {
if((samogloska[a[i]] and samogloska[a[i - 1]] and samogloska[a[i - 2]]) or (!samogloska[a[i]] and !samogloska[a[i - 1]] and !samogloska[a[i - 2]])) ilekonczyna[i] = i - 1;
else ilekonczyna[i] = ilekonczyna[i - 1];
result += ilekonczyna[i++];
}
cout << result;
return 0;
}
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 | #include <iostream> #include <string> using namespace std; bool samogloska[150]; int ilekonczyna[200000]; int main() { samogloska['a'] = true; samogloska['o'] = true; samogloska['u'] = true; samogloska['i'] = true; samogloska['e'] = true; samogloska['y'] = true; ios::sync_with_stdio(false); cin.tie(nullptr); string a; cin >> a; ilekonczyna[1] = 0; long long int result = 0; int i = 2; int size = a.length(); while(i < size) { if((samogloska[a[i]] and samogloska[a[i - 1]] and samogloska[a[i - 2]]) or (!samogloska[a[i]] and !samogloska[a[i - 1]] and !samogloska[a[i - 2]])) ilekonczyna[i] = i - 1; else ilekonczyna[i] = ilekonczyna[i - 1]; result += ilekonczyna[i++]; } cout << result; return 0; } |
English