[JavaScript] 프로그래머스 짝수의 합

M_yeon·2022년 12월 10일
0

javascript

목록 보기
15/15
post-thumbnail

알고리즘 영역에서 너무 약하다보니 Lv.0부터 다시 차근차근 풀고 있는데 도움이 정말 많이 되는것 같다!!
짝수의합을 풀면서 가장 먼저 생각이 든건 아 for문으로 풀어야지 근데 이거 reduce 함수로도 될것 같은데 했지만 reduce 함수는 자주 쓰던 함수가 아니기 때문에 for문으로 손이 먼저 갔다..........

function solution(n) {
    let answer = 0;
    for(let i = 0; i <= n; i++){
        if(i%2 === 0) answer += i
    }
    return answer
}

이것이 내가 푼 문제인데

다른사람의 풀이를 보고 찾아보고 하다가 가우스의 덧셈이라는것을 보고는
아 이거 정말 편리하네..???하고 시도해보았다

function solution(n) {
    var num = Math.floor(n/2); // 5
    return num*(num+1); // num = 5 * (5+1) === 5 * 6 =30
}

이렇게 된다는 것이었다................

num 은 10에서 반으로 나누었으니 5가 되고
5 * ( 5 + 1)은 즉!!

(10/2) * (10/2+1) 가 된다.

짝수의 덧셈에서 활용할 수 있는 가우스의 덧셈!!! 기억하자

0개의 댓글