정의
양의 정수 n
는 실제 숫자입니다 (OEIS 시퀀스 A005153 ). 모든 작은 양의 정수는 별개의 제수의 합으로 표시 될 수 있습니다 n
.
예를 들어, 18
실제 숫자입니다. 제수는 1, 2, 3, 6, 9 및 18이며 18보다 작은 양의 정수는 다음과 같이 형성 할 수 있습니다.
4 = 1 + 3 5 = 2 + 3 7 = 1 + 6
8 = 2 + 6 10 = 1 + 9 11 = 2 + 9
12 = 3 + 9 = 1 + 2 + 9 = 1 + 2 + 3 + 6
13 = 1 + 3 + 9 14 = 2 + 3 + 9 15 = 6 + 9
16 = 1 + 6 + 9 17 = 2 + 6 + 9
그러나 14
실제 숫자는 아닙니다. 제수는 1, 2, 7, 14이며 4, 5, 6, 11, 12 또는 13에 추가되는 하위 집합이 없습니다.
도전
양의 정수를 입력으로 받아 OEIS와의 일관성을 위해 1부터 색인 된 x
x 번째 실제 숫자 를 리턴하거나 인쇄 하는 프로그램, 함수 또는 동사를 작성하십시오 . 코드는 합리적인 데스크톱 컴퓨터에서 2 분 이내에 최대 250000 개의 입력을 처리 할 수있을 정도로 효율적이어야합니다. (NB Java 내 참조 구현은 0.5 초 미만으로 250000을 관리하고 Python에서 내 참조 구현은 12 초 안에 그것을 관리합니다).
테스트 사례
Input Expected output
1 1
8 18
1000 6500
250000 2764000
1000000 12214770
3000000 39258256