[프로그래머스(LV1)] 내적

희희희·2022년 1월 18일
0

문제 설명

길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어질 때 a와 b의 내적을 return 하도록 solution 함수를 완성해라.

이때, a와 b의 내적은


내가 작성한 코드

import Foundation

func solution(_ a:[Int], _ b:[Int]) -> Int {
    
    var add: [Int] = []
    
    for i in 0..<a.count {
        add.append(a[i] * b[i])
    }
    return add.reduce(0){$0 + $1}
}

다른 문제들에 비해서 굉장히 쉬웠다. 결과값을 담을 배열을 선언하고 내적한 값을 append해주었다.

reduce를 이용해 배열의 합을 구해 리턴해주었다.

다른 분 코드를 참고

import Foundation

func solution(_ a:[Int], _ b:[Int]) -> Int {
    
    return zip(a,b).map(*).reduce(0,+)
}

처음 이 코드를 봤을 때 너무 간단해서 충격을 받았다. 실행 시간은 내가 작성한 것이 더 빨랐지만 내가 볼 땐 아래 코드가 더 예뻐보였다.

주로 간단하게 코드를 작성하시는 분들을 보면 map, reduce, filter를 정말 잘 활용하셨다.

빨리 따로 공부해서 조금 더 익숙해져야겠다.

profile
iOS 어플 개발 연습

0개의 댓글