[백준]B3-2355

oxllz·2022년 1월 27일
0

백준-브론즈

목록 보기
29/65
post-thumbnail

문제

두 정수 A와 B가 주어졌을 때, 두 정수 사이에 있는 수의 합을 구하는 프로그램을 작성하시오. 사이에 있는 수들은 A와 B도 포함한다.


입력

첫째 줄에 두 정수 A, B가 주어진다. (-2,147,483,648 ≤ A, B ≤ 2,147,483,647)


출력

첫째 줄에 답을 출력한다. (-2,147,483,648 ≤ 답 ≤ 2,147,483,647)


풀이


틀렸습니다 잔뜩 봤다 ^ㅇ^

A, B = map(int, input().split())
res = (A+B) * (abs(A-B)+1) // 2
print(res)

Sn=n(a+l)2S_n = \frac{n * (a+l)}{2}
등차수열의 합이라는 것을 알고 공식을 찾아 풀었는데 생각 못한 부분이 2가지 있었다.

  1. A 와 B 중 어느 것이 큰 숫자인지를 고려하지 않아 (A-B) 가 음수가 될 수 있다는 생각을 못했다.

  2. 괄호의 중요성..
    처음엔 ((abs(A-B)+1) // 2) * (A+B) 로 했다..

0개의 댓글