#include <bits/stdc++.h>
using namespace std;
string s;
int ost[200010];
long long tab[200010];
string spol = "aeiouy";
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
// cout << char(-48) << "\n";
cin >> s;
for(int i=0; i<s.size(); i++) {
// cout << int(s[i]) << "\n";
for(int j=0; j<spol.size(); j++) {
if(s[i]==spol[j]) {
s[i]='a';
break;
}
}
}
// cout << s << "\n";
for(int i=0; i<s.size(); i++) {
if(s[i]!='a') {
// cout << s[i] << " -> " << 'b' << "\n";
s[i]='b';
}
// cout << s[i];
}
// cout << "\n";
if(s.size()<3) {
cout << "0\n";
return 0;
}
for(int i=2; i<s.size(); i++) {
if(s[i]==s[i-1] && s[i]==s[i-2]) {
ost[i]=i;
}
else ost[i]=ost[i-1];
}
// for(int i=0; i<s.size(); i++) {
// cout << ost[i];
// }
// cout << "\n";
// cout << s << "\n";
for(int i=1; i<s.size(); i++) {
tab[i] = tab[i-1]+max(ost[i]-1,0);
}
cout << tab[s.size()-1] << "\n";
}
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | #include <bits/stdc++.h> using namespace std; string s; int ost[200010]; long long tab[200010]; string spol = "aeiouy"; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); // cout << char(-48) << "\n"; cin >> s; for(int i=0; i<s.size(); i++) { // cout << int(s[i]) << "\n"; for(int j=0; j<spol.size(); j++) { if(s[i]==spol[j]) { s[i]='a'; break; } } } // cout << s << "\n"; for(int i=0; i<s.size(); i++) { if(s[i]!='a') { // cout << s[i] << " -> " << 'b' << "\n"; s[i]='b'; } // cout << s[i]; } // cout << "\n"; if(s.size()<3) { cout << "0\n"; return 0; } for(int i=2; i<s.size(); i++) { if(s[i]==s[i-1] && s[i]==s[i-2]) { ost[i]=i; } else ost[i]=ost[i-1]; } // for(int i=0; i<s.size(); i++) { // cout << ost[i]; // } // cout << "\n"; // cout << s << "\n"; for(int i=1; i<s.size(); i++) { tab[i] = tab[i-1]+max(ost[i]-1,0); } cout << tab[s.size()-1] << "\n"; } |
English