문제 설명 |
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. |
제한 조건 |
|
입출력 예 | |
s | return |
"abcde" | "c" |
"qwer" | "we" |
나의 풀이
1. 문자열의 길이가 짝수이면 가운데 두개의 문자 출력
2. 문자열의 길이가 홀수이면 가운데 하나의 문자 출력
class Solution {
fun solution(s: String): String {
var len = s.length / 2
return if (s.length % 2 == 0)
s.substring(len-1, len+1)
else
s.substring(len, len+1)
}
}
Kotlin1 코드 정리
class Solution {
fun solution(s: String) =
with(s) { substring(length / 2 - 1 + (length % 2) .. length / 2) }
}
* length%2 를 더해주면서 짝수/홀수 가 나눠짐 :: 짝수의 경우 length/2-1, 홀수의 경우 length/2
* .. 을 사용하면 마지막 숫자 포함
'프로그래머스 > Kotlin | Level1' 카테고리의 다른 글
[프로그래머스/Kotlin]Level1 - 핸드폰 번호 가리기 (0) | 2021.09.15 |
---|---|
[프로그래머스/Kotlin]Level1 - 행렬의 덧셈 (0) | 2021.09.15 |
[프로그래머스/Kotlin]Level1 - 최대공약수와 최소공배수 (0) | 2021.08.25 |
[프로그래머스/Kotlin]Level1 - 약수의 합 (0) | 2021.08.17 |
[프로그래머스/Kotlin]Level1 - 자릿수 더하기 (0) | 2021.08.17 |