프로그래머스, 내적(level1)
프로그래머스, 내적
문제
두 배열의 내적을 구하는 문제
내적은 두 배열의 길이만큼 같은 인덱스 번호의 number을 곱하고 결과값을 갖는 것을 의미한다.
입출력 예
a | b | result |
---|---|---|
[1,2,3,4] | [-3,-1,0,2] | 3 |
[-1,0,1] | [1,0,-1] | -2 |
나의 풀이
let result = 0;
a.forEach((num, i) => result += num * b[i])
return result;
forEach를 사용하여 a를 반복하여 돌리고 result라는 변수에 a[i], 즉 num과 b[i]를 곱하여 대입 연산자로 더해준다.
코드 줄이기
잘 생각해보니 a의 길이만큼 반복하고 같은 index번호와 result라는 결과를 담을 수 있는 변수를 한 번에 충족하는 내장 함수가 있었다.
return a.reduce((acc, cur, i) => acc += cur * b[i], 0)
reduce를 이용하면 한줄로 끝낼 수 있다.
Author And Source
이 문제에 관하여(프로그래머스, 내적(level1)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ahngh/프로그래머스-내적level1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)