#include <bits/stdc++.h> using namespace std; #define show if(0) string s; long long tab[200005]{0}; long long x=0,last=-1; int main(){ cin>>s; for(long long i=0;i<(long long)s.size();i++){ if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u'||s[i]=='y') s[i]='a'; } for(long long i=0;i<(long long)s.size()-2;i++){ if(s[i]=='a'&&s[i+1]=='a'&&s[i+2]=='a') tab[i]=1; if(s[i]!='a'&&s[i+1]!='a'&&s[i+2]!='a') tab[i]=1; } for(long long i=0;i<(long long)s.size();i++){ if(tab[i]){ x+=(i+1)*(s.size()-i-2)-(last+1)*(s.size()-i-2); last=i; } } cout<<x<<endl; 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 | #include <bits/stdc++.h> using namespace std; #define show if(0) string s; long long tab[200005]{0}; long long x=0,last=-1; int main(){ cin>>s; for(long long i=0;i<(long long)s.size();i++){ if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u'||s[i]=='y') s[i]='a'; } for(long long i=0;i<(long long)s.size()-2;i++){ if(s[i]=='a'&&s[i+1]=='a'&&s[i+2]=='a') tab[i]=1; if(s[i]!='a'&&s[i+1]!='a'&&s[i+2]!='a') tab[i]=1; } for(long long i=0;i<(long long)s.size();i++){ if(tab[i]){ x+=(i+1)*(s.size()-i-2)-(last+1)*(s.size()-i-2); last=i; } } cout<<x<<endl; return 0; } |