#include <cstdio> #include <cstring> #include <string> using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);++i) #define REP(i,n) FOR(i,0,n) typedef long long LL; char a[200001]; bool v[200000]; int main() { gets(a); int n = strlen(a); string vv = "aeiouy"; REP(i,n) v[i] = vv.find(a[i]) != -1; int j = -1; LL r = 0; REP(i,n-2) { if (v[i] == v[i + 1] && v[i + 1] == v[i + 2]) j = i; r += j + 1; } printf("%lld\n", r); }
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 | #include <cstdio> #include <cstring> #include <string> using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);++i) #define REP(i,n) FOR(i,0,n) typedef long long LL; char a[200001]; bool v[200000]; int main() { gets(a); int n = strlen(a); string vv = "aeiouy"; REP(i,n) v[i] = vv.find(a[i]) != -1; int j = -1; LL r = 0; REP(i,n-2) { if (v[i] == v[i + 1] && v[i + 1] == v[i + 2]) j = i; r += j + 1; } printf("%lld\n", r); } |