[프로그래머스] 시저암호 (Kotlin)

728x90

문제


이해

문자를 n 만큼 밀어서 return

  1. 소문자
  2. 대문자

접근

  1. 입력값 리스트화
  2. 대문자의 경우 밀어주기
  3. 소문자의 경우 밀어주기

풀이

class Solution {
    fun solution(s: String, n: Int): String {
        return s.toList().joinToString(separator = "") {
            when (it) {
                in 'A'..'Z' -> ('A'.toInt() + (it.toInt() - 'A'.toInt() + n) % ('Z' - 'A' + 1)).toChar()
                in 'a'..'z' -> ('a'.toInt() + (it.toInt() - 'a'.toInt() + n) % ('z' - 'a' + 1)).toChar()
                else -> it
            }.toString()
        }
    }
}
728x90

댓글

Designed by JB FACTORY