반응형
문제:
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.

제한 조건
  - a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
  - a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
  - a와 b의 대소관계는 정해져있지 않습니다.

 

문제 풀어보기: https://school.programmers.co.kr/learn/courses/30/lessons/12912

 

풀이보기
더보기
function solution(a, b) {
    let sum = 0;
    
    if(a < b) {
        for (let i = a; i <= b; i++) {
            sum += i;
            }
        } else {
            for (let i = b; i <= a; i++) {
                sum += i;
                }
            }
    
    return sum;
}

이 문제는 자존감 높이기 용으로 풀어봤다 ㅎㅎ ;

간단한 문제로, 주어진 a, b 사이에 값을 더해서 리턴하면 된다.

주의할 점은 a, b 값이 각각 크고 작음이 고정되어있지 않아서 a < b 조건을 넣어주었다.

근데 똑같은 공식이 반복되어 맘에 들지 않았다.

function solution(a, b) {
    let sum = 0;
    let min = Math.min(a, b);
    let max = Math.max(a, b);
    
    for (let i = min; i <= max; i++) {
        sum += i;
    }
    
    return sum;
}

 그래서 먼저 a, b 값을 비교해서 각각 min, max 변수에 넣어주었더니 좀 더 깔끔한 코드가 완성되었다.

반응형

+ Recent posts