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
#include<bits/stdc++.h>
using namespace std;
bool gloski[30];
long long f(long long x){
    return (x-1)*(x-2)/2;
}
int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    gloski[0]=1;
    gloski[4]=1;
    gloski[8]=1;
    gloski[14]=1;
    gloski[20]=1;
    gloski[24]=1;
    string t;
    cin>>t;
    int last=0;
    long long wynik=f(t.size());
    for(int i=1; i<t.size()-1; i++){
        if(gloski[t[i]-'a']==gloski[t[i-1]-'a'] and gloski[t[i]-'a']==gloski[t[i+1]-'a']){
            wynik-=f(i+1-last);
            last=i;
        }
    }
    wynik-=f(t.size()-last);
    cout<<wynik;
}