풀이
a≤ba \le b일 때…
∑i=abi=(b−a+1)(a+b)2\sum_{i=a}^b i = \frac{(b - a + 1)(a + b)}{2}
입력으로 int 범위 a, b가 주어지지만 분자 계산 부분에서 int 범위를 벗어나기 때문에 그것만 잘 신경 써주면 된다.
코드
#include <cstdio>
long long swap(long long &a, long long &b)
{
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
int main()
{
long long a, b;
scanf("%lld %lld", &a, &b);
if (a > b)
swap(a, b);
printf("%lld\n", (b - a + 1) * (a + b) / 2);
return 0;
}
'온라인저지' 카테고리의 다른 글
[BOJ] 2718번: 타일 채우기 (0) | 2018.05.31 |
---|---|
[BOJ] 1520번: 내리막 길 (0) | 2018.05.31 |
[BOJ] 2133번: 타일 채우기 (0) | 2018.05.31 |
[BOJ] 2941번: 크로아티아 알파벳 (0) | 2018.05.26 |
[BOJ] 1026번: 보물 (0) | 2018.05.25 |
[BOJ] 11819번: The Shortest does not Mean the Simplest (0) | 2018.05.21 |
댓글