【POJ】:POJ 1575元辅音
2015-10-08 00:45
537 查看
题意
判断一个字符串是否满足下面三个规则:1.至少有一个元音(a,e,o,i,u)
2.不能出现三个及以上的连续元音或辅音
3.不能出现连续两个相同字母,但ee,oo除外。
如果都满足,就输出accept(按详细格式)
否则输出 not accpet(按详细格式)
解法
没什么特殊的,就是自己写控制函数对字符串进行判断而已。。。我又错在初始化错了地方啊!!!!!!
很经典的一个地方
int flag=0,trek=0,yuanfu=0; 错在了初始化
代码
代码就不作详细解释了。。。一万个人一万个版本。。。就是翻译那个规则而已。。。[code]#include <iostream> #include <string> using namespace std; int yuanyin(char a){ if(a=='a' ||a=='e' ||a=='i'||a=='o'||a=='u') return 1; else return 0; } int main(){ string s; while(cin>>s && s!="end"){ int flag=0,trek=0,yuanfu=0; for(int i=0;i<s.length();i++){ if((i<s.length()-2 && yuanyin(s[i])&& yuanyin(s[i+1]) && yuanyin(s[i+2])) ||(i<s.length()-2 && yuanyin(s[i])==0&& yuanyin(s[i+1])==0 && yuanyin(s[i+2])==0)){ yuanfu=1; break; } if(s[i+1]==s[i]) { if(s[i]=='e' ||s[i]=='o') continue; trek=1;break; } if(yuanyin(s[i])){flag = 1;} } if(trek==0 && yuanfu==0){ if(flag==0) {cout<<"<"<<s<<">"<<" is not acceptable."<<endl;} else{ cout<<"<"<<s<<">"<<" is acceptable."<<endl; } } else{ cout<<"<"<<s<<">"<<" is not acceptable."<<endl; } } return 0; }
happy coding
seen
欢迎一起探讨知识
相关文章推荐
- Jump Game II 解答
- UIPickerView常用属性
- 欢迎使用CSDN-markdown编辑器
- git global in c9.io
- MvvmLight for Xamarin.Forms
- UVALive 6139 Interval Product(树状数组)
- Android Studio中如何引用图片资源
- <优化算法>下降方法descent method
- 【转】ubuntu下允许root用户ssh远程登录
- 关情纸尾-----Quartz2D-图片添加水印
- leetcode 8.String to Integer (atoi)
- Python中的对象的排序
- Android UI设计小知识——富文本
- C++ String
- c++ 相关的技术资源整理归类
- POJ - 3279 Fliptile(开关问题)
- HDU1232-畅通工程 (并查集)
- poj 2353 Ministry 对规划方向有要求的dp
- 黑马程序员——IO概述之字节流和流对象缓冲技术
- ubuntu上spark-1.5 standalone mode 测试