Archive/Questions

[programmers/Swift] 가운데 글자 가져오기

Marco 2022. 5. 4. 21:34
728x90

programmers.co.kr - 코딩테스트연습 - Lv.1 - 연습문제 - 가운데 글자 가져오기

 

코딩테스트 연습 - 가운데 글자 가져오기

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret

programmers.co.kr

Constraints :

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

 

Solution.swift :

//
//  Created by Yongwoo Marco on 2022/05/02.
//  Copyright © 2022 Yongwoo Marco Kim. All rights reserved.
//

func solution(_ s:String) -> String {
    if s.count % 2 == 0 {
        return Array(s)[(s.count/2 - 1)...s.count/2].reduce("") { $0 + String($1) }
    } else {
        return String(Array(s)[s.count/2])
    }
}

print(solution("abcde")) // "c"
print(solution("qwer")) // "we"

How I tried this :

index가 0부터 시작하기 때문에 절반으로 나눈 값은 홀수 일 경우 딱 중간

짝수인 경우 중간 rhs 값이 된다.


글자수가 2개 -> s.count/2-1 -> 0

글자수가 1개 -> s.count/2 -> 0

 

out of range 문제가 없음

문제에 관한 모든 저작권 : https://programmers.co.kr/

728x90