https://www.acmicpc.net/problem/1834


문제

N으로 나누었을 때 나머지와 몫이 같은 모든 자연수의 합을 구하는 프로그램을 작성하시오. 예를 들어 N=3일 때, 나머지와 몫이 모두 같은 자연수는 4와 8 두 개가 있으므로, 그 합은 12이다.


입력

첫째 줄에 2,000,000 이하의 자연수 N이 주어진다.


출력

첫 줄에 구하고자 하는 수를 출력한다.


예제 입력

2000000


예제 출력

3999999999999000000


코드


👩‍💻 풀이과정

  • n을 1부터 하나씩 증가시키며 나열해보면
    n = 1 -> x
    n = 2 -> 3
    n = 3 -> 4, 8
    n = 4 -> 5, 10, 15
    이런 식으로 전개되는 것을 볼 수 있음
  • 나오는 개수가 n-1개가 된다는 것을 알 수 있고,
  • 합은 첫번째 항이 n+1이고, 등차가 n+1인 등차수열의 합임을 알 수 있음

  • long 타입 변수 sum에 등차수열의 합 공식 [n(a+l)/2]을 입력하여 출력