[C++] 백준 1834 : 나머지와 몫이 같은 수

Kim Nahyeong·2022년 3월 7일
0

백준

목록 보기
91/157

#include <iostream>

long long N;
long long sum = 0;
int main(int argc, char** argv){
  scanf("%lld", &N);

  for(long long i=1; i<N; i++){ // 나머지는 나누는 값을 넘을 수 없다
    sum += i*N + i;
  }

  printf("%lld\n", sum);

  return 0;
}

간단한 수학 문제다.
N으로 나누었을 때 나머지와 몫이 같은 모든 자연수의 합을 구한다
-> 역으로 생각해보면 'N * 몫 + 나머지'의 수를 반복문을 돌면서 구해주면 된다.

여기서 나머지는 나누는 값인 N을 넘을 수 없다.

때문에 for문을 저렇게 작성하여 구할 값의 조건을 주어 구해주면 된다.

0개의 댓글