728x90
시간 제한 : 2초
메모리 제한 : 128MB
입력
첫째 줄에 두 정수 i, j가 주어진다. 두 정수는 VC에서의 signed int 범위 안에 들어간다.
출력
첫째 줄에 답을 출력한다. 답은 VC에서의 signed int 범위 안에 들어간다.
소스코드
#include <iostream> using namespace std; int main(void) { long long i, j; cin >> i >> j; if (j >= i) cout << (j - i + 1)*(i + j) / 2; else cout << (i - j + 1)*(i + j) / 2; }
Tip
여기서 signed int, 음수도 존재 가능함과 i와 j가 오름차순이 아닐 수 있음을 인지해야 한다. 흔히 실수할 수 있는 부분이다. 이는 반복문으로 해결할 수 없고, int 자료형으로 담을 수 없는 경우가 있다. 수학적 계산으로 정리하면 쉽게 해결할 수 있다.
728x90
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준] 5545 - 최고의 피자(JOI 2012 예선) (0) | 2018.01.08 |
---|---|
백준] 3003 - 킹, 퀸, 룩, 비숍, 나이트, 폰 (0) | 2018.01.07 |
백준] 4641 - Doubles(ACM-ICPC Regional) (0) | 2018.01.04 |
백준] 9625 - BABBA(COCI 2013/2014) (0) | 2018.01.04 |
백준] 13458 - 시험 감독 (0) | 2018.01.03 |