[Level1] 두 정수 사이의 합
문제
문제 설명
두 정수 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의 대소관계는 정해져있지 않습니다.
입출력 예
a b return 3 5 12 3 3 3 5 3 12
문제 풀이
- a > b 인 경우
- a < b 인 경우
- a === b 인 경우
이 세가지 경우로 나눠서 생각하면 간단하게 풀수있다.
복잡하게 생각하기 싫어서 세가지 경우를 if else if
문으로 각각의 경우를 나눠서 계산했다.
이 풀이 방법도 맞지만 좀 더 깔끔한 방법을 찾아보니 Math.min(a,b)
와 Math.max(a,b)
를 사용하여 두 수의 크기를 비교하여 간단하게 문제를 푸는 방법도 존재했다.
정답 코드 (내 풀이)
function solution(a, b) {
let answer = 0;
if(a===b){
answer = a;
}else if(a>b){
for(var i=b; i<=a; i++){
answer += i;
}
}else if(a<b){
for(var i=a; i<=b; i++){
answer += i;
}
}
return answer;
}
정답 코드 (깔끔한 풀이)
function solution(a, b) {
let answer = 0;
for (var i = Math.min(a, b); i <= Math.max(a, b); i++)
answer += i;
return answer;
}
귀찮은거 세상에서 제일 싫어하면서.. 왜 코딩할땐 귀찮은 방법만 골라잡는가..🥺
Author And Source
이 문제에 관하여([Level1] 두 정수 사이의 합), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jminkyoung/Level1-두-정수-사이의-합저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)