본문 바로가기
알고리즘/프로그래머스

[C++] 두 정수 사이의 합(연습문제)

by 민-Zero 2020. 3. 21.

문제는 간단하다 매개변수로 전달받는 두 수 a, b 사이에 속한 모든 정수의 합을 반환하면 된다.

즉, a=1 b=5 라면 1+2+3+4+5=15 이므로 15를 반환하면 된다. 주의할 점은 a 가 b보다 작다는 보장이 없는 것이다.

 

설계 및 구현

구현을 위해주어진 함수는 long long 타입의 반환값을 가지며 int형 매개변수 a, b를 가진다.

파이썬에서 구현한것 처럼 등차수열의 합을 사용하자

① n(a + b)/2

② n(2a + (n-1)d)/2  (a가 첫번째 항이라고 가정할때)

파이썬으로 구현했을때와 같다.

단, 반환할때 long long으로 형변환을 해주지 않고 진행했을때 a, b가 int형이라 반환 타입과 맞지않아 에러가 발생하는 경우가 있었다.

무리없이 채점을 통과할 수 있었다.

댓글