프로그래머스 두 정수 사이의 합 알고리즘 문제 풀기

오늘도 프로그래머스에서 “두 정수 사이의 합” 라는 알고리즘 문제를 풀어보았습니다.

문제 설명

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

입출력 : 3, 5 / 3, 3 / 5, 3 예 : 12, 3, 12

코드

#include <string>
#include <vector>

using namespace std;

long long solution(int a, int b) {
    long long answer = 0;
    if(a>b)
    {
        int tmp = a;
        a = b;
        b = tmp;
    }
    for(int i=a;i<=b;i++)
    {
        answer += i;
    }
    return answer;
}

우선 처음 들어오는 인자가 더 크면, 서로 두 수를 바꿔줍니다.

그리고 for문을 이용하여 두 인자 사이의 수를 차례대로 더해줍니다.

Written on June 21, 2018