본문 바로가기
알고리즘 공부하기

프로그래머스 1단계 - 두 정수 사이의 합

by 코딩 척척학사 2022. 11. 8.
728x90

프로그래머스 1단계 - 두 정수 사이의 합

🍞 문제 설명

두 정수 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의 값을 비교하여 작으면 answer에 다음 값을 더하고 크면 이전 값을 더하는 식으로 구하였습니다.

function solution(a, b) {
    let answer = num = a;
    while(num != b){
        (a < b) ? num++ : num-- ;
        answer += num;
    }
    return answer;
}

🍞 다른 이의 풀이

수학 풀이 알고리즘은 역시 수학을 잘 해야 하나봅니다.

function adder(a, b){
    var result = 0
    return (a+b)*(Math.abs(b-a)+1)/2;
}
728x90

댓글


HTML이 적힌 썸네일 이미지
CSS가 적힌 썸네일 이미지
JAVASCRIPT가 적힌 썸네일 이미지

JAVASCRIPT

자세히 보기