본문 바로가기
Problem Solving

[Swift] 프로그래머스 K번째 수(lv. 1)

by DuncanKim 2023. 1. 20.
728x90

[Swift] 프로그래머스 K번째 수(lv. 1)

 

1. 문제

https://school.programmers.co.kr/learn/courses/30/lessons/42748

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

2. 접근

어떤 배열을 i번째부터 j번째까지 잘라서

오름 차순 정렬을 하고

그 중 k번째 숫자를 구해라.

 

말 그대로입니다.

임시 배열을 반복문 안에 두고, 거기에 i번째부터 j번째까지 원소를 담고 정렬을 해서 k번째 수를 answer 배열에 담아서 최종 출력해주었다.

 

3. 코드

import Foundation

func solution(_ array:[Int], _ commands:[[Int]]) -> [Int] {
    var answer = [Int]()
    
    for i in 0 ... commands.count - 1 {
        var tempArray = [Int]()
        for j in commands[i][0] - 1 ... commands[i][1] - 1 {
            tempArray.append(array[j])
        }
        answer.append(tempArray.sorted()[commands[i][2] - 1])
    }
    return answer
}
728x90

댓글