[JavaScript][Programmers] 두 정수 사이의 합

조준형·2021년 9월 2일
0

Algorithm

목록 보기
116/142
post-thumbnail

🔎 두 정수 사이의 합

❓ 문제링크

https://programmers.co.kr/learn/courses/30/lessons/12912

📄 제출 코드

function solution(a, b) {
  let answer = 0;
    for (let i = Math.min(a, b); i <= Math.max(a, b); i++) {
      answer += i;
    }
  return answer;
}
let a = 3;
let b = 5;
console.log(solution(a, b));

문제에서 a와 b의 대소관계는 정해져 있지 않고, a=b가 같으면 둘 중 하나를 리턴하라고한다.
그래서 아래처럼 나눠서 처음 답을 구했다.

if(a==b) return a;
else if(a<b) {...}
else{...}

이제 코드를 줄일 것이다.
반복되는 부분은 else if 와 else
두개 다 a와 b중 낮은 수부터 큰 수까지 반복한다.

for (let i = Math.min(a, b); i <= Math.max(a, b); i++) {
      answer += i;
    }

위 코드처럼 Math.min과 max를 이용해 줄일 수 있다.
줄이고 생각해보니 둘중 작은값과 큰값까지니까 같은경우에도 알아서 한번만 더할 것이다. 그래서 if문도 지우고 제출코드처럼 작성하였다.

profile
깃허브 : github.com/JuneHyung

0개의 댓글