Algorithm JS | 프로그래머스 코딩테스트_내적

앙두·2023년 6월 26일
0

Algorithm

목록 보기
15/17

📑 문제

문제
  • 매개변수 a, b는 정수 배열이고 길이가 같아야 한다.
  • 내적 ? 두 벡터의 원소들을 각각 곱하고 차곡차곡 더한것

🤓 나의 풀이

출제자의 의도를 약간 파악했음에도,,, 안일함으로 for문으로 푼 나란 련,,,
코린이 주제에 겸손함을 상실하고,,, reduce를 물고 늘어지지 못한 나란 련,,,

function solution(a, b) {
    let result = 0;
    for (let i = 0; i < a.length; i++) {
        result += a[i] * b[i]
    }

  return result;
}

문제는 쉬웠다,,,
충분히 reduce()로 풀 수 있었을 것을,,,
짧은 경험줄에 의지하여, 귀찮아서 for문으로 풀고 1점 먹은 나란 앙두,,,

💫 리팩토링

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

reduce()에서 index를 사용할 생각을 못하고 ㅠㅠ
맨날 acc이랑 cur만 쓰다가 ㅠㅠ 최선을 다하지 못한 것 왜케 죄책감 들죠
다른 사람들도 다들 이렇게 풀었다.

  1. a배열의 현재 요소와, b배열에 index로 접근한 요소를 각각 차례대로 곱하여 acc에 계속 더해주며 할당시켜준다.
profile
쓸모있는 기술자

0개의 댓글