알고리즘 연습/수학, 정수론, 기하

[🥉1 / 백준 1834 / 파이썬] 나머지와 몫이 같은 수

김세진 2022. 4. 19. 18:03
반응형

 

 

1834번: 나머지와 몫이 같은 수

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

www.acmicpc.net

 

문제

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

입력

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

출력

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

 

예제 입력 1

3

예제 출력 1

12

예제 입력 2

2000000

예제 출력 2

3999999999999000000

 

풀이

 

n으로 나누었을 때의 나머지는 n미만의 수로만 구성될 수 있다.

몫은 제한이 없지만 나머지와 같아야 하므로 마찬가지로 n미만의 수로만 구성될 것이다.

따라서 n*1+1 + n*2+2 + n*3+3 + ··· + n(n-1)+(n-1) 을 출력하면 된다.

 

n = int(input())
print(sum(n*i+i for i in range(1,n)))
반응형