#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; } |
English