32. 내적

Harold's velog·2024년 2월 13일

CodingTest (Class)

목록 보기
32/52


import Foundation

func solution(_ a:[Int], _ b:[Int]) -> Int {

    var answer : Int = 0

    for i in a.indices{
        answer += a[i]*b[i]
    }

    return answer
}


for문을 사용해서 해결했는데 아래보니 zip이 있었다.

import Foundation

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

zip

  • 2개 이상의 시퀀스를 조합하여 하나의 새로운 시퀀스를 생성한다.
  • zip함수를 사용하면 여러 시퀀스들을 병렬로 순회하며 요소들을 조합 할 수 있다.
  • zip은 각 시퀀스에서 동일한 인덱스의 요소들을 묶어 새로운 튜플 시퀀스로 반환한다.
zip(sequence1, sequence2, sequence3, ...)
let numbers = [1, 2, 3, 4, 5]
let strings = ["One", "Two", "Three", "Four", "Five"]

let zipped = zip(numbers, strings)

for (number, string) in zipped {
    print("\(number) is \(string)")
}
profile
데일리 정리, 하루에 최소 하나의 글은 적도록 하자.

0개의 댓글