티스토리 뷰

반응형

 

나의 풀이 법 

테스트 문제는 통과하였으나 , 제출했을 때 런타임 에러가 나서 실패하였다.

 

private fun solution(s: String, skip: String, index: Int): String {
    var answer = ""
    val list = ('a'..'z').toList()
    s.forEach {
        val index2 = list.indexOf(it) + index
        val c = ((it..list[index2]).count { l -> skip.contains(l) } + index2) % list.size
        answer += list[c]
    }
    return answer
}

 

어쩔 수 없이 다른 분의 풀이 법을 보았다. 

그렇게 차이나 보이진 않는데.. 잘 통과 되었다. 

private fun solution2(s: String, skip: String, index: Int): String {
    var answer: String = ""
    val skipped = skip.map { it.toChar() }
    val alphabet = ('a'..'z').filter { it !in skipped }

    s.forEach {
        val i = (alphabet.indexOf(it) + index) % alphabet.size
        answer += alphabet[i]
    }
    return answer
}
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함