HDU 1039(字符串判断 **)
题意是检查一个字符串是否满足三个条件:
一、至少有一个元音字母。二、不能出现三个连续的元音或三个连续的辅音。三、除了 ee 和 oo 外不能出现两个连续相同字母。
若三个条件都能满足,该字符串满足条件,有一个条件不满足则该字符串不满足条件。
但是这道题的数据......一定有元音字母,长度一定不少于 3。省去很多麻烦......
代码如下:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int len;
bool f;
std::ios::sync_with_stdio(false);
string s;
while(cin>>s)
{
if(s=="end") break;
len = s.length();
f = true;
// if(len==1)
// {
// if(s[0]!='a'&&s[0]!='e'&&s[0]!='i'&&s[0]!='o'&&s[0]!='u')
// {
// cout << "<" << s << "> is not acceptable.\n";
// continue;
// }
// else
// {
// cout << "<" << s << "> is acceptable.\n";
// continue;
// }
// }
// else if(len==2)
// {
// if((s[0]==s[1]&&s[0]!='e'&&s[0]!='o')||(s[0]!='a'&&s[0]!='e'&&s[0]!='i'&&s[0]!='o'&&s[0]!='u'&&s[1]!='a'&&s[1]!='e'&&s[1]!='i'&&s[1]!='o'&&s[1]!='u'))
// {
// cout << "<" << s << "> is not acceptable.\n";
// continue;
// }
// else
// {
// cout << "<" << s << "> is acceptable.\n";
// continue;
// }
// }
// else
{
for(int i = ; i < len-; ++i)
{
if(s[i]=='a'||s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u')
{
if(s[i+]=='a'||s[i+]=='e'||s[i+]=='i'||s[i+]=='o'||s[i+]=='u')
if(s[i+]=='a'||s[i+]=='e'||s[i+]=='i'||s[i+]=='o'||s[i+]=='u')
{
f = false;
break;
}
}
else
{
if(s[i+]!='a'&&s[i+]!='e'&&s[i+]!='i'&&s[i+]!='o'&&s[i+]!='u')
if(s[i+]!='a'&&s[i+]!='e'&&s[i+]!='i'&&s[i+]!='o'&&s[i+]!='u')
{
f = false;
break;
}
}
if(s[i]==s[i+])
if(s[i]!='e'&&s[i]!='o')
{
f = false;
break;
}
}
if(s[len-] == s[len-])
if(s[len-]!='e'&&s[len-]!='o') f = false;
if(s[len-]=='a'||s[len-]=='e'||s[len-]=='i'||s[len-]=='o'||s[len-]=='u')
{
if(s[len-]=='a'||s[len-]=='e'||s[len-]=='i'||s[len-]=='o'||s[len-]=='u')
if(s[len-]=='a'||s[len-]=='e'||s[len-]=='i'||s[len-]=='o'||s[len-]=='u')
f = false;
}
else
{
if(s[len-]!='a'&&s[len-]!='e'&&s[len-]!='i'&&s[len-]!='o'&&s[len-]!='u')
if(s[len-]!='a'&&s[len-]!='e'&&s[len-]!='i'&&s[len-]!='o'&&s[len-]!='u')
f = false;
}
}
if(!f) cout << "<" << s << "> is not acceptable.\n";
else cout << "<" << s << "> is acceptable.\n";
}
return ;
}
HDU 1039(字符串判断 **)的更多相关文章
- shell 字符串判断
字符串的判断 '-z 字符串' 判断字符串是否为空(为空返回真) '-n 字符串' 判断字符串是否为非空(非空返回真) '字符串1==字符串2' 判断字符串1是否和字符串2相等(相等返回真) '字符串 ...
- 由一篇吐槽对String空字符串判断的文章所引发的碎碎念
一.起因 最近有篇关于String空字符串判断的文章火了,老是看到这篇文章,既然如此我也只好认真看了下:程序员晒出一段代码引来无数网友狂喷!网友:你就活该当码农! 我也觉得这段代码写的不怎么的,首先程 ...
- JavaScript空字符串判断
JavaScript空字符串判断 本文完整示例代码GIT仓: 测试用例完整代码:isNullOrEmpty jPublic GIT仓:jPublic 比较常见写法 if (str == 'undefi ...
- sh_16_字符串判断方法
sh_16_字符串判断方法 # 1. 判断空白字符 space_str = " \t\n\r" print(space_str.isspace()) # 2. 判断字符串中是否只包 ...
- 单词数 HDU 2072 字符串输入控制
单词数 HDU 2072 字符串输入控制 题意 lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数.下面你的任务是帮助xiaoou333解决这个 ...
- Shell系列(28)- 条件判断之字符串判断
字符串判断 $变量时要用双引号引起来,即"$变量" 测试选项 作用 -z 字符串 判断字符串是否为空(为空返回真) -n 字符串 判断字符串是否为非空(非空返回真) 字符串1 == ...
- HDU 1039.Easier Done Than Said?-条件判断字符串
Easier Done Than Said? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/O ...
- 字符串 HDU 1039
规则: 1.必须至少包含一个元音字母.a e i o u 2.不能包含三个连续元音或者连续辅音字母. 3.不能包含两个连续字母,除了'ee'和'oo'. PS:字母个数(1<= N <=2 ...
- hdu 1039 Easier Done Than Said? 字符串
Easier Done Than Said? Time Limi ...
随机推荐
- 【转】设置 vim 显示行号永久有效
在linux环境下,vim是常用的代码查看和编辑工具.在程序编译出错时,一般会提示出错的行号,但是用vim打开的代码确不显示行号,错误语句的定位非常不便.那么怎样才能让vim显示代码的行号呢? 1 临 ...
- python学习day5 数据类型Ⅲ(字典)
day5 字典 回顾&补充 面试题 #数据类型判断a = 1 #intb = (1) #intc = ('1') #strd = (1,) #tuple int py2/py3 除法 强制转换 ...
- 洛谷P2704 炮兵阵地
本题过于经典...... 对于这种网格状压DP,套路一波刷表法DFS转移就没了. 三进制状压,0表示当前,上一个都没有.1表示当前无,上一个有.2表示当前有. 转移的条件就是上一行为0,当前不是山地, ...
- 线性筛prime/phi/miu/求逆元模板
这绿题贼水...... 原理我不讲了,随便拿张草稿纸推一下就明白了. #include <cstdio> using namespace std; ; int su[N],ans,top; ...
- 【洛谷P1403】约数研究
题目大意:求\[\sum\limits_{i=1}^n\sum\limits_{d|i}1\] 题解:交换求和顺序即可. \[\sum\limits_{i=1}^n\sum\limits_{d|i}1 ...
- es6快速入门
上次分享了es6开发环境的搭建,本次接着分享es6常用的特性. 1.变量声明let和const 我们都是知道在ES6以前,var关键字声明变量.无论声明在何处,都会被视为声明在函数的最顶部(不在函数内 ...
- windows 匿名管道: 父进程与子进程通信 (进程间通信之CreatePipe)
看了很多篇相关的资料,感觉这个还是比较靠谱的: 进程间通信之CreatePipe https://blog.csdn.net/dacxu/article/details/30071081 特别是 ...
- laravel基于redis实现的一个简单的秒杀系统
说明:网上很多redis秒杀系统的文章,看的都是一头雾水,然后自己来实现一个,也方便以后自己学习 实现的方式是用的redis的list队列,框架为laravel 核心部分为list的pop操作,此操作 ...
- 1. github配置
1. 安装:官网傻瓜式安装 2.密钥的生成:为了不让不想干的人提交代码,所以需要一个密钥 执行这个命令 : ssh-keygen -t rsa -C "邮箱地址" 然后一直回车键回 ...
- java键盘中输入q退出
用 java.util.Scanner 如下 public static void main(String[] args) { while(true){ Scanner scan = new Scan ...