hdu 1039 题目 Easier Done Than Said? (字符串中字符n多条件)

2024-06-03 19:38

本文主要是介绍hdu 1039 题目 Easier Done Than Said? (字符串中字符n多条件),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击打开链接

#include<stdio.h>
#include<string.h>char s[55];
bool isvol(char c){if(c=='a' || c=='e' || c=='i' || c=='o' || c=='u') return 1;return 0;
}
bool is2(int i,int j) {if(s[i]==s[j] && !((s[i]=='e'&&s[j]=='e')||(s[i]=='o' && s[j]=='o'))) return 1;return 0;
}
int main()
{int f1,f2,f3,i,len;bool vol[55];while(~scanf("%s",s)){if(!strcmp(s,"end"))break;memset(vol,0,sizeof(vol));f1=0;f2=f3=1;len = strlen(s);if(isvol(s[0]))  {				//判断第一个字符 vol[0] = f1=1;if(len==1) f2=f3=1;						//只有一个字母 }if(len>=2  )  {if(len==2) f2=1; 						//只有2个字符,不可能3个连续元音或辅音 if(isvol(s[1])){ vol[1] = f1 =1;	}   //判断第二个字符 if(is2(1,0)) f3=0;}for(i=2;i<len;i++){if(isvol(s[i])) { vol[i]=1;  f1=1;	}if(is2(i,i-1))  { f3=0;  	break;	}  //连续两个相同 if( (vol[i-1]&&vol[i-2]&&vol[i])||(!vol[i-1]&&!vol[i-2]&&!vol[i]) ) {// 连续3个元音或辅音 f2=0;	break;}}if(f1&&f2&&f3) printf("<%s> is acceptable.\n",s);else  printf("<%s> is not acceptable.\n",s);}return 0;
} 




这篇关于hdu 1039 题目 Easier Done Than Said? (字符串中字符n多条件)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1027926

相关文章

C#数据结构之字符串(string)详解

《C#数据结构之字符串(string)详解》:本文主要介绍C#数据结构之字符串(string),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录转义字符序列字符串的创建字符串的声明null字符串与空字符串重复单字符字符串的构造字符串的属性和常用方法属性常用方法总结摘

Java实现时间与字符串互相转换详解

《Java实现时间与字符串互相转换详解》这篇文章主要为大家详细介绍了Java中实现时间与字符串互相转换的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、日期格式化为字符串(一)使用预定义格式(二)自定义格式二、字符串解析为日期(一)解析ISO格式字符串(二)解析自定义

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

python中字符串拼接的几种方法及优缺点对比详解

《python中字符串拼接的几种方法及优缺点对比详解》在Python中,字符串拼接是常见的操作,Python提供了多种方法来拼接字符串,每种方法有其优缺点和适用场景,以下是几种常见的字符串拼接方法,需... 目录1. 使用 + 运算符示例:优缺点:2. 使用&nbsjsp;join() 方法示例:优缺点:3

java字符串数字补齐位数详解

《java字符串数字补齐位数详解》:本文主要介绍java字符串数字补齐位数,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java字符串数字补齐位数一、使用String.format()方法二、Apache Commons Lang库方法三、Java 11+的St

C++字符串提取和分割的多种方法

《C++字符串提取和分割的多种方法》在C++编程中,字符串处理是一个常见的任务,尤其是在需要从字符串中提取特定数据时,本文将详细探讨如何使用C++标准库中的工具来提取和分割字符串,并分析不同方法的适用... 目录1. 字符串提取的基本方法1.1 使用 std::istringstream 和 >> 操作符示

C语言字符函数和字符串函数示例详解

《C语言字符函数和字符串函数示例详解》本文详细介绍了C语言中字符分类函数、字符转换函数及字符串操作函数的使用方法,并通过示例代码展示了如何实现这些功能,通过这些内容,读者可以深入理解并掌握C语言中的字... 目录一、字符分类函数二、字符转换函数三、strlen的使用和模拟实现3.1strlen函数3.2st

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字

Nginx中location实现多条件匹配的方法详解

《Nginx中location实现多条件匹配的方法详解》在Nginx中,location指令用于匹配请求的URI,虽然location本身是基于单一匹配规则的,但可以通过多种方式实现多个条件的匹配逻辑... 目录1. 概述2. 实现多条件匹配的方式2.1 使用多个 location 块2.2 使用正则表达式