프로그래머스
https://programmers.co.kr/learn/courses/30/lessons/12912
나의 풀이(1)
function solution(a, b) {
let sum = 0;
if(a>b){
while(a>=b){
sum+=b;
b++;
}
return sum;
}
else if(a<b){
while(a<=b){
sum+=a;
a++
}
return sum;
}
return a;
}
나의 풀이(2)
function solution(a,b){
const arr = [a,b];
arr.sort((x,y)=>x-y);
let sum = 0;
for(let i=arr[0];i<=arr[1];i++){
sum+=i;
}
return sum;
}
다른 사람 풀이(1)
Math.min()
과 Math.max()
를 적절히 활용해 두 수의 크기를 비교한다.
function solution(a,b){
let sum = 0;
for(let i=Math.min(a,b);i<=Math.max(a,b);i++){
sum+=i;
}
return sum;
}
다른 사람 풀이(2) 가우스 공식
- 연속하는 숫자의 합을 구할때, 사용하는 가우스 공식
(최댓값+최솟값)*(숫자 갯수)/2
을 활용했다.
function solution(a,b){
return (a+b)*(Math.abs(a-b)+1)/2;
}