티어 : 실버 4

if문이 많이 들어가서 조금 복잡하게 푼 것 같다.
조건 3개를boolean으로 두고 차근차근 찾아가니 어렵지 않게 풀었다
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
/**
* 모음(a,e,i,o,u) 하나를 반드시 포함하여야 한다.
* 모음이 3개 혹은 자음이 3개 연속으로 오면 안 된다.
* 같은 글자가 연속적으로 두번 오면 안되나, ee 와 oo는 허용한다.
*/
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
while(true) {
String alpa = bufferedReader.readLine();
if(alpa.equals("end")) break;
int gather = 0; // 모음
int consonant = 0; // 자음
boolean first = false;
boolean second = true;
boolean third = true;
for (int i = 0; i < alpa.length(); i++) {
if(alpa.charAt(i) == 'a' || alpa.charAt(i) == 'e' ||alpa.charAt(i) == 'i'
||alpa.charAt(i) == 'o' ||alpa.charAt(i) == 'u'){
first = true;
gather++; // 모음 카운트 + 1
consonant = 0; // 자음 초기화
if(gather >= 3) second = false;
} else{
consonant++; // 자음 + 1
gather = 0; // 모음 초기화
if(consonant >= 3) second = false;
}
if (i >= 1) {
if (alpa.charAt(i) != 'e' && alpa.charAt(i) != 'o') {
if (alpa.charAt(i) == alpa.charAt(i - 1)) {
third = false;
}
}
}
}
if (first && second && third) {
System.out.println("<" +alpa +"> " + "is acceptable.");
}
else
System.out.println("<" +alpa +"> " + "is not acceptable.");
}
}
}