HDU 1039 Easier Done Than Said?(模拟)
2017-11-13 16:57
495 查看
【题目链接】
http://acm.hdu.edu.cn/showproblem.php?pid=5532
2.它不能包含三个连续的元音或三个连续的辅音。
3.除了’ee’或’oo’外,它不能包含连续出现的两个相同的字母。
(就这个问题而言,元音是“a”,“e”,“i”,“o”和“u”;所有其他字母都是辅音)
问你输入字符串是否合理?
http://acm.hdu.edu.cn/showproblem.php?pid=5532
题目意思
题目大意:给你一个规定规则,1.它必须包含至少一个元音。2.它不能包含三个连续的元音或三个连续的辅音。
3.除了’ee’或’oo’外,它不能包含连续出现的两个相同的字母。
(就这个问题而言,元音是“a”,“e”,“i”,“o”和“u”;所有其他字母都是辅音)
问你输入字符串是否合理?
解题思路
一题字符纯模拟题,不多说了。代码部分
#include <bits/stdc++.h> using namespace std; #define LL long long const int maxn=100005; const int INF=0x3f3f3f; int n,m; int main() { string c; while(cin>>c,c!="end") { int l,fal=0,s=0,fa=0; l=c.size(); for (int i=0; i<l; i++) { if (i>0) { if (c[i]==c[i-1]) { if ((c[i]!='o'&&c[i]!='e')||c[i]==c[i+1]) { fa=0; break; } } } if (c[i]=='a'||c[i]=='e'||c[i]=='i'||c[i]=='o'||c[i]=='u') { fa++; if (fal==0||fal==1) { s++; fal=1; } else { s=1; fal=1; } } else { if (fal==0||fal==2) { s++; fal=2; } else { s=1; fal=2; } } if (s>2) { fa=0; break; } } if (fa==0) cout<<"<"<<c<<"> is not acceptable."<<endl; else cout<<"<"<<c<<"> is acceptable."<<endl; } return 0; }
相关文章推荐
- hdu 1039 Easier Done Than Said?(字符串模拟)
- hdu 1039 Easier Done Than Said?(检查密码模拟)
- HDU 1039 Easier Done Than Said?(String模拟)
- HDU杭电 1039 Easier Done Than Said?(字符串问题)
- hdu 1039 Easier Done Than Said?
- HDOJ/HDU 1039 Easier Done Than Said?(字符串处理~)
- HDU 1039 Easier Done Than Said?
- hdu 1039 Easier Done Than Said?
- HDU 1039 -Easier Done Than Said?
- HDU-1039-Easier Done Than Said?(Java && 没用正则表达式是我的遗憾.....)
- HDOJ/HDU 1039 Easier Done Than Said?(字符串处理~)
- HDU1039 Easier Done Than Said?
- HDU--1039 -- Easier Done Than Said?
- HDU-1039-Easier Done Than Said?(Java && 没用正則表達式是我的遗憾.....)
- hdu 1039 Easier Done Than Said? (DP)
- hdu 1039 Easier Done Than Said?
- HDU(简单题目) 1038 Biker's Trip Odometer 1039 Easier Done Than Said?
- hdu 1039 Easier Done Than Said?
- hdu 1039 题目 Easier Done Than Said? (字符串中字符n多条件)
- HDU 1039 Easier Done Than Said?