1039 Easier Done Than Said?
来源:互联网 发布:canopy算法 编辑:程序博客网 时间:2024/05/22 16:45
#include<iostream>using namespace std;bool first(string str);bool second(string str);bool third(string str);int main(void){ string str; while(cin>>str) { if(str=="end") { break; } if(!first(str)||!second(str)||!third(str)) { cout<<'<'<<str<<'>'<<" is not acceptable."<<endl; } else { cout<<'<'<<str<<'>'<<" is acceptable."<<endl; } } return 0;}bool isVowel(char ch){ return ch=='a'||ch=='e'||ch=='i'||ch=='o'||ch=='u';}bool first(string str){ for(int i=0;i<str.length();i++) { if(str[i]=='a'||str[i]=='e'||str[i]=='i'||str[i]=='o'||str[i]=='u') { return true; } } return false;}bool second(string str){ for(int i=0;i<str.length();i++) { if((i+2)<str.length()&&isVowel(str[i])&&isVowel(str[i+1])&&isVowel(str[i+2])) { return false; } else if((i+2)<str.length()&&!isVowel(str[i])&&!isVowel(str[i+1])&&!isVowel(str[i+2])) { return false; } } return true;}bool third(string str){ for(int i=0;i<str.length();i++) { if((i+1)<str.length()&&str[i]==str[i+1]&&str[i]!='e'&&str[i]!='o') { return false; } } return true;}