본문 바로가기

코딩테스트

[프로그래머스] level1. 내적 (javascript)

반응형

문제

길이가 같은 두 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의 길이)

나의 풀이

새로배운 map이랑 reduce를 활용해보았다

function solution(a, b) {
    const tmp = a.map((cur,i)=> cur*b[i])
    const answer = tmp.reduce((acc,curr)=> acc+curr)
    return answer;
}

다른이들의 풀이

function solution(a, b) {
    return a.reduce((acc, _, i) => acc += a[i] * b[i], 0); 
}

reduce 의 두번째 값은 초기값이다!!
그냥 reduce로만 해도 됐다.

참조

reduce(누적값,현재값,인덱스)

반응형