#include<bits/stdc++.h>
std::string x;
long long dobre=1;
bool sam[300];
bool last;
long long ile=1;
long long len=1;
long long dl;
int main(){
sam['a']=sam['e']=sam['i']=sam['o']=sam['u']=sam['y']=true;
std::cin>>x;
last=sam[x[0]];
dl=x.size();
for(int i=1;i<x.size();i++){
if(sam[x[i]]==last){
ile++;
}else{
ile=1;
last=sam[x[i]];
}
if(ile<3)
len++;
else
len=2;
dobre+=len;
}
std::cout<<dl*(dl+1)/2-dobre<<std::endl;
}
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 | #include<bits/stdc++.h> std::string x; long long dobre=1; bool sam[300]; bool last; long long ile=1; long long len=1; long long dl; int main(){ sam['a']=sam['e']=sam['i']=sam['o']=sam['u']=sam['y']=true; std::cin>>x; last=sam[x[0]]; dl=x.size(); for(int i=1;i<x.size();i++){ if(sam[x[i]]==last){ ile++; }else{ ile=1; last=sam[x[i]]; } if(ile<3) len++; else len=2; dobre+=len; } std::cout<<dl*(dl+1)/2-dobre<<std::endl; } |
English