RIEN😚
이상한 나라의 개발자
RIEN😚
전체 방문자
오늘
어제
  • 분류 전체보기 (125)
    • Algorithm (68)
      • 알고리즘 (0)
      • Baekjoon (8)
      • 프로그래머스 (55)
      • HackerRank (5)
    • Android (30)
      • Project (1)
      • Error (2)
      • Studio (1)
      • Android (26)
    • Kotlin (6)
    • CS (4)
      • 네트워크 (2)
      • 데이터베이스 (2)
    • Front End (5)
      • React (1)
      • VUE (3)
      • Project (0)
      • 기타 (1)
    • 기록 (11)
      • 회고록 (6)
      • TIL (5)

블로그 메뉴

  • Github🔥
  • 포트폴리오🌹

공지사항

인기 글

티스토리

250x250
반응형
hELLO · Designed By 정상우.
RIEN😚

이상한 나라의 개발자

Algorithm/프로그래머스

[프로그래머스] Lv 2. 모음사전

2022. 5. 25. 15:41
728x90
반응형
 

코딩테스트 연습 - 모음사전

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

programmers.co.kr

 

문제

사전에 알파벳 모음 'A','E','I','O','U'만을 사용하여 만들 수 있는,

길이 5 이하의 모든 단어가 수록되어 있습니다.

 

단어 하나 word가 매개변수로 주어질 때,

이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요.

 

풀이

흠.. 추후 작성 예정

 

코드

import kotlin.math.*

class Solution {
    val dic = mapOf(
        'A' to 0, 'E' to 1, 'I' to 2, 'O' to 3, 'U' to 4
    )
    fun solution(word: String): Int {
        var answer = 0
        val response = word.foldIndexed(0){ i, total, v ->
            val sum = (0 until (5-i)).fold(0){s,c ->
                s+((dic[v]?:0)*(5.0).pow(c).toInt())
            }
            total + sum + 1
        }
        return response
    }
}
반응형

'Algorithm > 프로그래머스' 카테고리의 다른 글

[프로그래머스] Lv 2. 쿼드 압축 후 개수 세기(kotlin)  (0) 2022.05.26
[프로그래머스] Lv 2. n^2 배열 자르기(Kotlin)  (0) 2022.05.26
[프로그래머스] Lv 2. 전력망을 둘로 나누기  (0) 2022.05.25
[프로그래머스] Lv 2. 배달  (0) 2022.05.25
[프로그래머스] Lv 2. 2개 이하로 다른 비트  (0) 2022.05.13
    'Algorithm/프로그래머스' 카테고리의 다른 글
    • [프로그래머스] Lv 2. 쿼드 압축 후 개수 세기(kotlin)
    • [프로그래머스] Lv 2. n^2 배열 자르기(Kotlin)
    • [프로그래머스] Lv 2. 전력망을 둘로 나누기
    • [프로그래머스] Lv 2. 배달
    RIEN😚
    RIEN😚
    안드로이드 / 코틀린 독학으로 취업하자!

    티스토리툴바