#include <iostream> using namespace std; bool samo(char c) { return c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='y'; } int main() { ios_base::sync_with_stdio(false); string s; cin>>s; long long ile=0; int pocz=0; for (int i=0; i<s.size(); ++i) { bool sam=samo(s[i]); if (pocz<=i-2 && sam==samo(s[i-1]) && sam==samo(s[i-2])) { long long a=i-pocz; ile+=a*(a+1)/2-1; pocz=i-1; } } long long a=s.size()-pocz; ile+=a*(a+1)/2; long long n=s.size(); cout<<(n*(n+1)/2-ile)<<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 29 30 31 32 33 34 | #include <iostream> using namespace std; bool samo(char c) { return c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='y'; } int main() { ios_base::sync_with_stdio(false); string s; cin>>s; long long ile=0; int pocz=0; for (int i=0; i<s.size(); ++i) { bool sam=samo(s[i]); if (pocz<=i-2 && sam==samo(s[i-1]) && sam==samo(s[i-2])) { long long a=i-pocz; ile+=a*(a+1)/2-1; pocz=i-1; } } long long a=s.size()-pocz; ile+=a*(a+1)/2; long long n=s.size(); cout<<(n*(n+1)/2-ile)<<endl; return 0; } |