标签:
a tv ptoui bontres zoggax wiinq eep houctuh end
<a> is acceptable. <tv> is not acceptable. <ptoui> is not acceptable. <bontres> is not acceptable. <zoggax> is not acceptable. <wiinq> is not acceptable. <eep> is acceptable. <houctuh> is acceptable.
import java.io.*;
import java.util.*;
public class Main
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
while (input.hasNext())
{
boolean flag1 = false, flag2 = true, flag3 = true;
String str = input.next();
if (str.endsWith("end"))
break;
char c[] = str.toCharArray();
// 第一个条件:必须包括至少一个元音字母
for (int i = 0; i < c.length; i++)
{
if (c[i] == 'a' || c[i] == 'e' || c[i] == 'i' || c[i] == 'o'
|| c[i] == 'u')
{
flag1 = true;
break;
}
}
// 第二个条件:不能包括三个连续的元音字母或者三个连续的辅音字母
int a = 0, b = 0;
for (int i = 0; i < c.length; i++)
{
if (c[i] == 'a' || c[i] == 'e' || c[i] == 'i' || c[i] == 'o'
|| c[i] == 'u')
{
a++;
if (a >= 3)
{
flag2 = false;
}
b = 0;
}
else
{
b++;
if (b >= 3)
{
flag2 = false;
}
a = 0;
}
}
// 第三个条件:不能包括两个连续同样的字母,除了'ee'和'oo'这两种情况除外
int i, j = 0;
for (i = 1; i < c.length; i++, j++)
{
if (c[i] == c[j])
{
if (c[i] == 'e' || c[i] == 'o')
continue;
else
{
flag3 = false;
break;
}
}
}
if (flag1 && flag2 && flag3)
{
System.out.println("<" + str + "> is acceptable.");
}
else
{
System.out.println("<" + str + "> is not acceptable.");
}
}
}
}
)import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) throws Exception {
Scanner cin = new Scanner(System.in);
while (cin.hasNext()) {
String str = cin.next();
if(str.equals("end"))
break;
Pattern p1 = Pattern.compile("[aeiou]{3}|[^aeiou]{3}");
Pattern p2 = Pattern.compile("([a-df-np-z])\\1");
Pattern p3 = Pattern.compile("[aeiou]+");
Matcher m = p1.matcher(str);
boolean flag = false;
if(!m.find())
{
m = p2.matcher(str);
if(!m.find())
{
m = p3.matcher(str);
if(m.find())
flag = true;
}
}
if(flag)
System.out.println("<"+str+"> is acceptable.");
else
System.out.println("<"+str+"> is not acceptable.");
}
cin.close();
}
}HDU-1039-Easier Done Than Said?(Java && 没用正則表達式是我的遗憾.....)
标签:
原文地址:http://www.cnblogs.com/mengfanrong/p/5184897.html