반응형

안녕하세요. 개발 중인 정주입니다.

 

오늘은 프로그래머스 - 나누어 떨어지는 숫자 배열 문제를 풀었습니다.

 


목차


    Github

     

    GitHub - jeongju9216/SwiftAlgorithm: 스위프트 알고리즘

    스위프트 알고리즘. Contribute to jeongju9216/SwiftAlgorithm development by creating an account on GitHub.

    github.com

     

    문제 링크

    https://programmers.co.kr/learn/courses/30/lessons/12910

     

    코딩테스트 연습 - 나누어 떨어지는 숫자 배열

    array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하

    programmers.co.kr

     


    풀이

    filter를 이용해 나머지가 0인지 체크합니다. 

    문제 조건에 오름차순 정렬이 있어 sorted()를 해줘야 합니다.

     

    한 가지 의문인건 result 배열의 count가 0일 때 append(-1)을 해줬었는데요.

    테스트 2에서 런타임 에러가 나는 경우가 있더라고요.

    왜 런타임 에러가 나는지는 잘 모르겠네요...


    전체 코드

    
          
    func solution(_ arr:[Int], _ divisor:Int) -> [Int] {
    var result = arr.filter { $0 % divisor == 0 }.sorted()
    if result.count == 0 {
    result = [-1]
    }
    return result
    }

    아직은 초보 개발자입니다.

    더 효율적인 코드 훈수 환영합니다!

    공감 댓글 부탁드립니다.

     

     

    반응형
    유정주