문제 어떤 자연수 N이 자기 자신을 제외한 약수들의 합이 N이라면, 그 수를 완전수라 한다. 만약 약수의 합이 N보다 크다면 초과수라고 하고, 약수의 합이 N보다 작다면 부족수라 부른다.
예를 들어, 6은 가장 작은 완전수로 6의 6보다 작은 6의 약수는 1, 2, 3이며, 이 중 이 수들의 합은 6으로 원래의 값과 일치한다. 12의 약수는 1, 2, 3, 4, 6이고, 이 수들의 합은 16이므로 12는 초과수이다. 8의 약수는 1, 2, 4이고, 이 약수들의 합은 7이므로 8은 부족수이다. 하나의 정수 N이 주어질 때, N이 완전수, 초과수, 부족수 중에 어느 것인지 알아내어 출력하는 프로그램을 작성하라.
입력 입력 데이터는 표준 입력을 사용한다. 입력의 첫 줄에는 하나의 정수 N이 주어진다.
단 0 < N < 100000001 출력 출력은 표준 출력을 사용한다. N이 완전수이면 0을 출력하고, 초과수이면 1, 부족수이면 -1을 출력한다.
입력 예제 1 6 출력예제 1 0 입력 예...
#
부족수
#
완전수
#
초과수
원문 링크 : 완전수, 초과수, 부족수