-
[Swift] 알고리즘 공부 - 내적알고리즘 공부/프로그래머스 2023. 3. 30. 00:58반응형
문제 설명
길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.
이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)
제한사항
- a, b의 길이는 1 이상 1,000 이하입니다.
- a, b의 모든 수는 -1,000 이상 1,000 이하입니다.
입출력 예
a b result[1,2,3,4] [-3,-1,0,2] 3 [-1,0,1] [1,0,-1] -2 설명
1. zip으로 a와 b를 묶는다
2. map 함수로 $0과 $1를 곱해준다
3. reduce로 전부 더해준다
import Foundation func solution(_ a:[Int], _ b:[Int]) -> Int { return zip(a,b).map{ $0 * $1 }.reduce(0,+) }
map에서 {$0 * $1}을 조금더 간단하게 {*} 이렇게 작성해도된다.
반응형'알고리즘 공부 > 프로그래머스' 카테고리의 다른 글
[Swift] 알고리즘 공부 - 약수의 개수와 덧셈 (0) 2023.03.30 [Swift] 알고리즘 공부 - 문자열 내림차순으로 배치하기 (0) 2023.03.30 [Swift] 알고리즘 공부 - 수박수박수박수박수박수? (0) 2023.03.30 [Swift] 알고리즘 공부 - 가운데 글자 가져오기 (0) 2023.03.30 [Swift] 알고리즘 공부 - 제일 작은 수 제거하기 (0) 2023.03.28