백준 Baekjoon 1834번 나머지와 몫이 같은 수 - JAVA

Jaeho Kim·2022년 4월 13일
1

코딩테스트

목록 보기
13/110

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

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

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

출력
첫 줄에 구하고자 하는 수를 출력한다.
**
예제 입력 1

3

예제 출력 1

12

예제 입력 2

2000000

예제 출력 2

3999999999999000000
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		long num = scan.nextLong();
		long sum = 0;

		for (int i = 0; i < num; i++) {
			sum += (num + 1) * i;
		}
		System.out.println(sum);
	}
}
  • 설명
    • 처음에 이해가 잘 안되서 조금 헤매었는데 직접 계산해보니 답을 알게 되었다.
    • N = 1 일때 x
    • N = 2 일때 3
    • N = 3 일때 4, 8
    • N = 4 일때 5, 10, 15
    • ...
    • 나머지와 몫이 같은 자연수 갯수 N-1개
    • 나머지와 몫이 같은 자연수는 배수관계
profile
Hello, World!

0개의 댓글