스파르타 코딩 클럽 - iOS 스타터 6기/알고리즘 코드카타

18. 스파르타 코딩 클럽 - 4월 3일 코딩테스트 연습 (코드카타)

seongpil Heo 2025. 4. 3. 13:20

 ❓ 오늘의 문제

1. 배열 자르기

  • 정수 배열 numbers와 정수 num1num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해 보세요.

배열 자르기

나의 정답 코드

import Foundation

func solution(_ numbers:[Int], _ num1:Int, _ num2:Int) -> [Int] {
    var result: [Int] = []
    for i in num1...num2 {
        result.append(numbers[i])
    }
    return result
}

 ✓ TIL

오늘은 배열 자르기라는 문제를 풀었다.

정수 배열 numbers과 정수 num1, num2가 주어질 때 numbers의 num1번 째 인덱스부터 num2번째 인덱스까지

자른 정수 배열을 return하면 된다.

 

문제를 처음 봤을 때 result.append(numbers[num1 ~ num2])를 수행할 수 있는 방법을 찾으면 될 거 같다고 생각했다.

구글링을 하다가 for문과 반-열림 연산자를 이용해서 하는 방법을 찾게 되었는데

 

for i in num1 ..< num2 으로 코드를 작성했는데 문제가 num2까지 포함을 하지 않고 돌아가는 for문이라서

반-열림 연산자를 사용하지 않고 for i in num1 ... num2 로 코드를 수정하였다.

 

for 문 안에서는 result.append(numbers[i])를 수행하면서 배열에 원하는 범위의 값들을 추가해주었다.


 😼 GitHub