码迷,mamicode.com
首页 > 其他好文 > 详细

HDU ACM 1039 Easier Done Than Said? 水题

时间:2015-06-03 21:40:44      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:c   c++   acm   算法   编程   

分析:判断密码是否安全。

三个条件:至少一个元音字母,连续三个字母不能同时为元音或辅音,连续两个字母不能相同,但"ee"和"oo"除外。

#include<iostream>
using namespace std;

bool isyuan(char c)
{
	return c=='a' || c=='e' || c=='i' || c=='o' || c=='u';
}

bool judge(char a[])
{
	int i,l;

	l=strlen(a);
	for(i=0;a[i];i++)
		if(isyuan(a[i])) break;
	if(!a[i]) return false;        //是否有元音

	for(i=0;i<l-2;i++)
	{
		if(isyuan(a[i]) && isyuan(a[i+1]) && isyuan(a[i+2])||!isyuan(a[i]) && !isyuan(a[i+1]) && !isyuan(a[i+2]))
			return false;
		if(a[i]==a[i+1] && a[i]!='e' && a[i]!='o')
			return false;
	}
	if(a[i]==a[i+1] && a[i]!='e' && a[i]!='o')
			return false;
	return true;
}

int main()      
{
	char a[30];

	while(scanf("%s",a),strcmp(a,"end"))
	{
		printf("<%s> ",a);
		puts(judge(a)?"is acceptable." : "is not acceptable.");
	}
    return 0;      
}


HDU ACM 1039 Easier Done Than Said? 水题

标签:c   c++   acm   算法   编程   

原文地址:http://blog.csdn.net/a809146548/article/details/46350629

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!