/** GOKURI */ #include #include #include #include #include #include #include #include #include #include using namespace std; #define FNAME "say.txt" #define cin fin static inline bool is_vowel(const char c) { switch(c) { case 'a': case 'e': case 'i': case 'o': case 'u': return true; default: return false; } } bool solve(const string& s) { bool has_vowel = false; int vcnt = 0, ccnt = 0; char prev = 0; for(int i = 0; i < s.size(); i++) { if(s[i] != 'e' && s[i] != 'o' && prev == s[i]) return false; prev = s[i]; if(is_vowel(s[i])) { has_vowel = true; if(++vcnt >= 3) return false; ccnt = 0; } else { vcnt = 0; if(++ccnt >= 3) return false; } } return has_vowel; } int main() { ifstream fin(FNAME); if(!fin) return -1; string str; while(getline(fin, str) && str != "end") { cout << "<" << str << ">" << " is "; if(!solve(str)) cout << "not "; cout << "acceptable." << endl; } return 0; }