문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
알고리즘
없음
풀이
글자의 종류가 5가지이고, 비어있는 경우가 자릿수마다 한 가지씩 올 수 있기 때문에
자릿수 당 증가하는 글자 조합 수는 다음과 같다.
1 = 1
5 * 1 + 1 = 6
5 * 6 + 1 = 31
5 * 31 + 1 = 156
5 * 156 + 1 = 781
따라서 word의 길이에서
(글자의 자릿수에 해당하는 글자 당 조합 수 * 글자 번호) 를 누적하여 반환한다.
코드
class Solution {
public int solution(String word) {
int answer = word.length();
String dic = "AEIOU";
int[] offset = {781, 156, 31, 6, 1};
for(int i=0; i<word.length(); i++)
answer += dic.indexOf(word.charAt(i)) * offset[i];
return answer;
}
}
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 등산코스 정하기 (Java) (0) | 2022.11.09 |
---|---|
[프로그래머스] 두 큐 합 같게 만들기 (Java) (0) | 2022.11.09 |
[프로그래머스] 2개 이하로 다른 비트 (Java) (0) | 2022.11.09 |
[프로그래머스] 괄호 회전하기 (Java) (0) | 2022.11.08 |
[프로그래머스] 합승 택시 요금 (Java) (0) | 2022.11.08 |