이것이 나의 첫 도전입니다!
배경
완전 숫자 는 양의 정수이며, 자체를 제외한 모든 제수의 합과 같습니다.
그래서 6
완전 수는 이후이다 1 + 2 + 3 = 6
.
다른 한편으로 12
는 1 + 2 + 3 + 4 + 6 = 16 != 12
.
태스크
당신의 작업은 간단합니다. 프로그램을 작성하십시오 n
.
나는 완벽한 숫자가 아니기 때문에
d1 + d2 + ... + dm = s == n
나는 완벽한 숫자입니다.d1 + d2 + ... + dm = s [<>] n
d1, ... dm
를 n
제외한 모든 제수는 어디에 있습니까 n
?
s
모든 제수의 합입니다 d1, ..., dm
(다시,없이 n
).
[<>]
중 하나입니다 <
(있는 경우 s < n
) 또는 >
(경우 s > n
).
예
옵션 n
인 6
"1 + 2 + 3 = 6 == 6 때문에 I는 완전한 숫자이다"
를 들어 n
존재가 12
"I이 완전 수 아니다 1 + 2 + 3 + 4 + 6 = 16> 12 때문에"
위해 n
존재 13
: "1 = 1 <13이므로 완벽한 숫자가 아닙니다."
규칙
n
언어의 표준보다 크지 않습니다int
.n
표준 입력, 명령 행 인수 또는 파일에서 읽을 수 있습니다 .- 출력 메시지는 표준 출력으로 인쇄해야하며 출력에 추가 문자가 표시되지 않습니다 (공백 또는 줄 바꿈이있을 수 있음)
- 작업 (또는 주요 부분)을 해결하는 내장 함수 나 라이브러리 함수를 사용할 수 없습니다. 아니
GetDivisors()
또는 그런 것. - 다른 모든 표준 허점이 적용됩니다.
우승자
이것은 코드 골프 이므로 바이트 단위의 가장 짧은 코드가 승리합니다!
=
와 ==
같은 식? 말이되지 않습니다. d1 + d2 + ... + dm = s = n
IMO 여야합니다 .