[프로그래머스] 가운데 글자 가져오기 (12903)(Kotlin)

원본 문제

문제 설명

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

제한 사항

  • s는 길이가 1 이상, 100이하인 스트링입니다.

예제 입출력

s return
“abcde” “c”
“qwer” “we”

문제 풀이1

class Solution {
  fun solution(s: String): String {
    return  if (s.length % 2 != 0) s[s.length / 2].toString()
        else s[s.length / 2 - 1].toString() + s[s.length / 2].toString()
  }
}

문제 풀이2

class Solution {
  fun solution(s: String): String = with(s) {
    substring(length / 2 - 1 + (length % 2) .. length / 2)
  }
}

문제 풀이3

class Solution {
  fun solution(s: String): String = with(s) {
    slice( (length - 1) / 2 .. length / 2)
  }
}

문제 풀이4

class Solution {
  fun solution(s: String): String = s.slice((s.length - 1) / 2 .. (s.length / 2))
}