in.add()
[84512] 5주차_모음사전 본문
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/84512
코딩테스트 연습 - 5주차_모음사전
사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니
programmers.co.kr
문제 해결 방법
규칙을 찾아 구현했다.
A - AA - AAA - AAAA - AAAAA - AAAAE - AAAAI - AAAAO - AAAAU
다섯 번째 자리의 모음은 "AEIOU" 순서대로 바뀌는데 한 번이면 된다.
AAAE - AAAEA - AAAEE - AAAEI - AAAEO - AAAEU - AAAI
네 번째 자리의 모음은 바뀌는데 6번이 필요하다.
.
.
.
각 자리가 바뀌는데 {781, 156, 31, 6, 1} 만큼이 필요함을 구할 수 있다.
class Solution {
public int solution(String word) {
int answer = 0;
String aeiou = "AEIOU";
int[] th = {781, 156, 31, 6, 1}; // 각 자리의 모음이 바뀌는데 필요한 횟수
for(int i = 0; i < word.length(); i++) {
int n = aeiou.indexOf(word.charAt(i));
answer += th[i] * n;
}
return answer + word.length();
}
}'Algorithm > Programmers' 카테고리의 다른 글
| [83201] 2주차_상호평가 (0) | 2021.10.08 |
|---|---|
| [64062] 징검다리 건너기 (0) | 2021.09.27 |
| [42883] 큰 수 만들기 (0) | 2021.09.14 |
| [42746] 가장 큰 수 (0) | 2021.09.13 |
| [42885] 구명보트 (0) | 2021.09.08 |
Comments