왼쪽 알파벳이 항상 우선이다!
5중 for 문을 돌린다.
각 for문 마다 단어를 추가하면된다.
for문도 괜찮지만 dfs도 괜찮을거 같다.
1 A
2 AA
3 AAA
4 AAAA
5 AAAAA
6 AAAAE
7 AAAAI
8 AAAAO
9 AAAAU
10 AAAE
import java.util.*;
class Solution {
static int seq = 1;
static StringBuilder sb = new StringBuilder();
static char[] aeiou = new char[] {'A', 'E', 'I', 'O', 'U'};
static Map<String, Integer> map = new HashMap<>();
public int solution(String word) {
dfs(0);
return map.get(word);
}
static void dfs(int depth) {
if (depth == 5) return;
for (char c : aeiou) {
sb.append(c);
map.put(sb.toString(), seq++);
dfs(depth + 1);
sb.deleteCharAt(sb.length() - 1);
}
}
}