두 정수 사이의 합

정병웅·2023년 2월 7일
0

알고리즘 스터디

목록 보기
10/14

문제 설명

두 정수 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의 대소관계는 정해져있지 않습니다.

코드 풀이

class Solution {
    public long solution(int a, int b) {
        long answer = 0;
        long num1 =0;
        if(a<b){
            for(int i= a+1;i<b;i++){
                num1 += i;
            }
            answer = a+b+num1;
        }
        if(a==b){
            answer = a;
        }
        if(a>b){
            for(int i=b+1;i<a;i++){
                num1 += i;
            }
            answer = a+b+num1;
        }
        return answer;
    }
}
  1. 두 정수 사이의 값을 저장하기 위해 long 타입의 변수를 선언했다.
    -> 사실 이것 때문에 많이 헤맸다,,,,int로 변수 선언했는데 몇몇 테스트 코드에 막혀 채점이 안되었는데 조건을 보면 a와 b는 int이지만 사잇 값들은 int의 사이즈를 넘을 수 있었다(난 댕청해서,,,몰랐지,,,)
    따라서 long으로 수정 했더니 바로 통과됐다.
  2. if 문으로 분기 하는 방법으로 진행 했다.
profile
인생은 IT 노가다

0개의 댓글