본문 바로가기

백준/JAVA

[Baekjoon/JAVA] 1834번 - 나머지와 몫이 같은 수

[백준] Baekjoon Online Judge

문제로 이동

 

문제

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

 

입력

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

 

출력

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

 


예제 입력 예제 출력
3 12
2000000 3999999999999000000

풀이

import java.util.Scanner;

public class Main {
    public static void main(String[] args)  {
        Scanner in = new Scanner(System.in);

        long N = in.nextLong();
        long sum = 0;

        // N으로 나누었을 때 나머지와 몫이 같은 모든 자연수 찾기
        for (int i = 1; i < N; i++)
            sum += (i * N + i);

        // 출력
        System.out.println(sum);
    }
}

N으로 나눴을 때 나오는 몫이 N보다 작은 수들만이 나머지와 몫이 같을 수 있다.