[ 프로그래머스 ] 모음사전 JAVA

2021. 9. 30. 08:52알고리즘/프로그래머스

728x90
반응형

문제 설명


문제 풀이

import java.util.Arrays;
class Solution {
    public int solution(String word) {
        int answer = 0;
        int[] intArr = new int[] {781, 156, 31, 6, 1};
        Character[] charArr = {'A','E','I','O','U'};
        for(int i=0; i<word.length(); i++) {
            answer += intArr[i] * Arrays.asList(charArr).indexOf(word.charAt(i)) + 1;
        }
        return answer;
    }
}

AAAAA와 AAAAE의 간격은 1입니다. //1

AAAA와 AAAE의 간격은 1*5+1입니다. //6

AAA와 AAE의 간격은    (1*5+1)*5+1입니다. //31

AA와 AE의 간격은       ((1*5+1)*5+1)*5+1입니다. //156

A와 E의 간격은          (((1*5+1)*5+1)*5+1)*5+1입니다. //781

 

자신의 오른쪽 알파벳이 A, E, I, O, U를 총 5번 지나서 1번 더 지나야

다음 알파벳으로 바뀌기 때문에 1씩 더해줘야 합니다.

 

그래서 입력받은 문자열을 각 문자마다 알파벳과 자릿수를 확인하고

값을 곱해서 answer을 출력했습니다.

 

 

 

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

 

코딩테스트 연습 - 5주차_모음사전

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

programmers.co.kr

 

728x90
반응형