728x90
반응형
이번엔 코틀린으론 쉽게 풀었던 가운데 글자 가져오기 문제를 풀어봤다.
야곰님 부스트코스 강의를 들으며 하나씩 풀어보고 있는데 코틀린에서 문자열 템플릿을 사용한 것처럼
여기서는 문자열 보간법을 사용해 풀어보았다.
문제
오죽 쉬웠으면 내가 프로그래머스에서 가장 먼저 풀어본 문제인가 싶다.
하지만, 스위프트로 풀기엔 코틀린보다 까다로웠다.
코틀린에서는 String에서의 index를 정수로 가져왔는데 Swift에서는 같은 방식으로 불러올 수 없었다.
풀이
if-else 구문을 사용해 문자열의 길이가 짝수인지 홀수인지 먼저 검사하고
짝수라면 중앙의 2글자, 홀수라면 정중앙의 1글자만 가져오면 된다.
일단, 문자 하나를 인덱스를 통해 가져오려면 코틀린처럼 s[index]와 같은 형식은 불가능했기 때문에 다른 함수를 사용해야 했다.
그래서 구글 검색을 통해 찾은 함수가 index()함수였는데 오버로딩된 함수같았다.
내가 사용한 함수의 파라미터는 String.Index와 offsetBy: String.IndexDistance를 사용한 함수로
Index와 offsetBy 차이만큼 떨어진 곳을 가리킨다.
이 함수를 사용해 문자열을 만들어 리턴했는데... 음.. 생각보다 코드가 지저분하다.
추후에 이 게시글을 수정할 수도 있고, 아예 새로운 글로 다른 풀이를 만들어 볼 수도 있을 것 같다.
728x90
반응형
'프로그래머스' 카테고리의 다른 글
문자열 다루기 기본 코틀린(Kotlin) (0) | 2022.09.28 |
---|---|
제일 작은 수 제거하기 코틀린(Kotlin) (0) | 2022.09.23 |
나머지가 1이 되는 수 찾기 스위프트(Swift) (0) | 2022.09.05 |
시저 암호 코틀린(Kotlin) (0) | 2022.09.03 |
정수 내림차순으로 배치하기 코틀린(Kotlin) (0) | 2022.08.30 |