ALGORITHM/PROGRAMMERS

[프로그래머스] 위클리 챌린지 5주차

0298 2021. 8. 30. 11:36

https://programmers.co.kr/learn/courses/30/lessons/84512

 

코딩테스트 연습 - 5주차

사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니

programmers.co.kr

2021-08-30


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.*;
 
class Solution {
   static String[] arr = {"A""E""I""O""U"};
    static List<String> list;
    static void solve(int cnt, int limit, String tmp) {
        if(cnt == limit) {
            list.add(tmp);
            return;
        }
 
        for(int i = 0; i < arr.length; i++) {
            solve(cnt+1, limit,tmp+arr[i]);
        }
    }
    static int solution(String word) {
        int answer = 0;
        list = new ArrayList<>();
        for(int i = 1; i <= arr.length; i++) solve(0, i, "");
        Collections.sort(list);
        return list.indexOf(word) + 1;
    }
}
cs

#문제풀이

경우의 수가 몇 개 안되서, 모든 경우의 수를 다 구한 후 해당되는 word의 index를 구했다.