[프로그래머스] 두 정수 사이의 합- Java

선예원·2021년 10월 30일
0
post-thumbnail

문제 설명

  • 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴.
  • 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴.

풀이

class Solution {
    public long solution(int a, int b) {
        long answer = 0;
        if(a <= b)
        {
            for(int i = a; i <= b; i++)
            {
                answer += i;
            }    
        }
        else
        {
            for(int i = b; i <= a; i++)
            {
                answer += i;
            }            
        }
        
        return answer;
    }
}

다른 사람의 풀이

class Solution {

    public long solution(int a, int b) {
        return sumAtoB(Math.min(a, b), Math.max(b, a));
    }

    private long sumAtoB(long a, long b) {
        return (b - a + 1) * (a + b) / 2;
    }
}

(b - a + 1) * (a + b) / 2 : 등차수열의 합.

0개의 댓글

관련 채용 정보