//
// main.cpp
// pol
//
// Created by Apple on 11/12/2018.
// Copyright © 2018 Example. All rights reserved.
//
#include <cstdio>
char s[200007];
bool czysamogloska(char c) {
return c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='y';
}
int main(int argc, const char * argv[]) {
long long n,i,pozost;
long long odp;
scanf("%s",s);
for(i=0;s[i]!=0;i++) {
s[i]=czysamogloska(s[i]);
}
n=i;
pozost=-1;
odp=0;
for(i=0;i<n-2;i++) {
if(s[i]==s[i+1] && s[i]==s[i+2]) {
if(pozost!=-1) {
odp+=(pozost+1)*(i-pozost);
}
pozost=i;
s[i]=1;
} else {
s[i]=0;
}
}
if(pozost!=-1) {
odp+=(n-2-pozost)*(pozost+1);
}
printf("%lld\n", odp);
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 35 36 37 38 39 40 41 42 43 44 | // // main.cpp // pol // // Created by Apple on 11/12/2018. // Copyright © 2018 Example. All rights reserved. // #include <cstdio> char s[200007]; bool czysamogloska(char c) { return c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='y'; } int main(int argc, const char * argv[]) { long long n,i,pozost; long long odp; scanf("%s",s); for(i=0;s[i]!=0;i++) { s[i]=czysamogloska(s[i]); } n=i; pozost=-1; odp=0; for(i=0;i<n-2;i++) { if(s[i]==s[i+1] && s[i]==s[i+2]) { if(pozost!=-1) { odp+=(pozost+1)*(i-pozost); } pozost=i; s[i]=1; } else { s[i]=0; } } if(pozost!=-1) { odp+=(n-2-pozost)*(pozost+1); } printf("%lld\n", odp); return 0; } |
English