관리 메뉴

cococo-coding

[C++ 풀이] 2355번. 시그마 본문

[BOJ] 코드 모음/C++_learning 문제집

[C++ 풀이] 2355번. 시그마

_dani 2024. 1. 16. 19:20

문제

풀이

가우스의 공식을 적용해서 풀면 된다. 

이때 a가 b보다 작은 수라는 보장은 없으므로 이 부분을 if문으로 분기해서 풀어준다.

 

코드

#include <iostream>
using namespace std;

/*
    1. 두 정수 a,b를 입력받는다.
    2. 두 정수 사이에 있는 수들의 합을 구한다.
    3. 합을 출력한다. 
*/

int main() {
    //1
    long a, b; //int형보다 커야 하므로, long이상으로 잡아주기
    cin >> a >> b;

    //2 
    if (a <= b)
        cout << ((b - a + 1) * (a + b) / 2);
    else //b가 더 작은 경우
        cout << ((a - b+ 1) * (a + b) / 2);

    return 0;
}