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 ...
随机推荐
- codeforces 997C.Sky Full of Stars
题目链接:codeforces 997C.Sky Full of Stars 一道很简单(?)的推式子题 直接求显然不现实,我们考虑容斥 记\(f(i,j)\)为该方阵中至少有\(i\)行和\(j\) ...
- Java将Excel中科学计数法解析成数字
需要注意的是一般的科学表达式是1.8E12 1.8E-12 而在Excel中的科学表达式是1.8E+12 1.8E-12 我写的科学计数法的正则表达式是(-?\d+\.?\d*)[Ee]{1}[\+- ...
- Android应用开发资源
Android应用设计和开发人员现在可以参考由Android用户体验(UX)团队官方发布的Android设计指南.该指南提供了开发者应该遵循的基本原则,并列出了很多细节指导,涉及设备与显示.主题.触控 ...
- VSIX 插件右键菜单
vs2017 插件开发 环境 WIN10 VS2017 CMMT VSIX 参考资源: vs菜单命令ID速查 https://docs.microsoft.com/zh-cn/visualstudio ...
- 【dfs】p1731 生日蛋糕
1441:[例题2]生日蛋搞 [题目描述] 7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体.设从下往上数第i(1≤i≤M)层蛋糕是半径为Ri, 高 ...
- 合法括号序列(dp+组合数学)
键盘上有左括号(,右括号),和退格键-,共三个键. 牛牛希望按键n次,使得输入的字符串恰好一个合法的括号序列. 每按一次左括号(,字符串末尾追加一个左括号( 每按一次右括号),字符串末尾追加一个右括号 ...
- vue--传值
传值:(如果传的是引用类型,当值发生改变时所有绑定他的全都发生改变,如果传的时值类型,就只有他自己发生改变) 父传子: 父页面:父组件定义一个属性 users:[ {name:'张三',positio ...
- bzoj3829 POI2014 FAR-FarmCraft
题目链接 思路 用\(f[i]\)表示完成第\(i\)棵子树所需要得时间. 考虑如果有两个子树\(a\)和\(b\),如果先去完成子树\(a\),那么对于花费得时间就是\(f[b] + siz[a] ...
- vue学习(3)
回顾昨天内容 1.let和const 2.模板字符串 `` 插变量${变量名} 3.箭头函数 function(){} == ()=>{} 1.this的指向问题 2.arguments不能使用 ...
- 使用bedtools提取vcf多个位置的变异(extract multi-region of genotypes by bedtools)
1.下载安装bedtools: 2.生成bed文件:标准的bed文件格式如下: chr7 127471196 127472363 Pos1 0 + 127471196 127472363 255,0, ...