[알고리즘]/BOJ
[C#/BOJ] 1834번: 나머지와 몫이 같은 수
개발새발주발
2024. 4. 15. 18:00
728x90
1. 문제
1834번: 나머지와 몫이 같은 수
N으로 나누었을 때 나머지와 몫이 같은 모든 자연수의 합을 구하는 프로그램을 작성하시오. 예를 들어 N=3일 때, 나머지와 몫이 모두 같은 자연수는 4와 8 두 개가 있으므로, 그 합은 12이다.
www.acmicpc.net
2. 코드
using System;
class BJ1834
{
static void Main()
{
long n = long.Parse(Console.ReadLine());
long sum = ((n * n * n) - n) / 2;
Console.WriteLine(sum);
}
}
3. 풀이
간단한 수학 문제이다.
그러나 여기서 가장 중요한 것은 바로 형(type)
처음 int로 입력을 받고 입력값을 2,000,000으로 입력했을 때 음수가 나왔다.
입력받는 값이 최대 2,000,000이지만 답인 sum은 n의 세제곱이기 때문에 long을 사용해주어야한다 !
형식 설정을 잘못하게 되면 결과가 잘못되거나 오버플로우가 발생할 수 있다.