단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
최종코드
푸는데 걸린시간 17분
class Solution {
fun solution(s: String): String {
var count = s.count()
return if(count % 2 == 0){
s.substring((count/2)-1,(count/2)+1)
}else {
s.substring(count/2,(count/2)+1)
}
}
}
s 의 길이가 짝수면 가운데 2글자를 반환하고 s의 길이가 홀수면 가운데 1글자만 반환해야하니까
일단 s의 길이를 세야해서 count라는 변수에 s의 개수를 넣어줬당.
그리고 만약에 글자개수가 짝수면, substring을 사용해서 두글자를 반환하기위해
count/2 -1 인덱스 에서 -1이랑 count/2 에서 +1 인덱스의 글자를 반환하게 했음
count/2 에 -1과 +1을 한이유는 인덱스는 0부터 시작이기때문에 -1을 해야했고, substring이 적은 인덱스-1 만큼을 반환하기 때문에 +1을 해줘야했음~
class Solution {
fun solution(s: String) =
with(s) { substring(length / 2 - 1 + (length % 2) .. length / 2) }
}