题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=1039
无聊的时候刷刷水题。
AC代码:
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <cstring>
#include <string>
#include <vector>
#include <list>
#include <deque>
#include <queue>
#include <iterator>
#include <stack>
#include <map>
#include <set>
#include <algorithm>
#include <cctype>
using namespace std;
typedef long long LL;
const int N=22222;
const LL II=1000000007;
char s[N];
bool is(char c)
{
if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u')
return true;
return false;
}
bool xiaohao()
{
int len=strlen(s),i;
int flag=0;
if(is(s[0]))
flag=1;
for(i=1;i<len;i++)
{
if(is(s[i])) flag=1;
if(s[i]==s[i-1]&&s[i]!='e'&&s[i]!='o')
return false;
}
for(i=2;i<len;i++)
{
if(is(s[i])&&is(s[i-1])&&is(s[i-2]))
return false;
if(!is(s[i])&&!is(s[i-1])&&!is(s[i-2]))
return false;
}
if(flag==0)
return false;
return true;
}
int main()
{
int i,j,T,k,n;
while(gets(s)&&strcmp(s,"end")!=0)
{
printf("<%s> ",s);
if(xiaohao())
printf("is acceptable.\n");
else
printf("is not acceptable.\n");
}
return 0;
}