[프로그래머스] 두 정수 사이의 합

쿼카쿼카·2022년 9월 10일
0

알고리즘

목록 보기
6/67
function solution(a, b) {
  	// 내가 푼 풀이
    const [n1, n2] = a <= b ? [a, b] : [b, a];
    let answer = 0;
    for(let i=n1; i<=n2; i++) {
       answer += i;
    }
    return answer;
  
    // Math.minmax를 이용한 풀이
    let answer = 0;
    for(let i=Math.min(a, b); i<=Math.max(a, b); i++) answer += i;
    return answer;
  
    // 가우스 풀이
    return (a+b)*(Math.abs(a-b)+1) / 2;
}

내가 푼 풀이

  • 세상 친절하고 섹시하게 비구조 할당을 사용했다.
  • 다만 풀면서도 저게 굳이 필요한가? 라는 생각이 들었다.

Math.min() Math.max()

  • a와 b 중 어떤 수가 큰지 모르기 때문에 구조분해 했었는데 Math를 이용하면 쉽게 for 안에서 선택이 가능하다.

가우스

  • 가우스의 재림...항상 까먹는 식이니 외워두자
profile
쿼카에요

0개의 댓글