정의
하자 m및 n양의 정수합니다. 우리는 말 mA는 제수 트위스트 의 n정수가 존재하는 경우에 1 < a ≤ b하도록 n = a*b하고 m = (a - 1)*(b + 1) + 1. 0 또는 그 이상의 제수 트위스트를 적용하여 m얻을 수 있으면 의 자손 입니다 . 모든 숫자는 고유 한 자손입니다.nmn
예를 들어을 고려하십시오 n = 16. 우리는 선택할 수 a = 2하고 b = 8있기 때문에 2*8 = 16. 그때
(a - 1)*(b + 1) + 1 = 1*9 + 1 = 10
이는 10제수의 비틀기 임을 나타냅니다 16. a = 2그리고 와 함께 b = 5, 우리 7는 이것이 제수의 비틀기임을 알 수 10있습니다. 따라서 7의 자손입니다 16.
작업
양의 정수가 주어지면 n의 자손을 계산합니다 n.
규칙
숫자의 제수를 계산하는 내장 연산을 사용할 수 없습니다.
전체 프로그램 및 함수가 모두 허용되며, 정렬되고 복제되지 않는 한 콜렉션 데이터 유형 (일종의 세트와 같은)을 리턴하는 것이 허용됩니다. 가장 낮은 바이트 수가 이기고 표준 허점이 허용되지 않습니다.
테스트 사례
1 -> [1]
2 -> [2] (any prime number returns just itself)
4 -> [4]
16 -> [7, 10, 16]
28 -> [7, 10, 16, 25, 28]
51 -> [37, 51]
60 -> [7, 10, 11, 13, 15, 16, 17, 18, 23, 25, 28, 29, 30, 32, 43, 46, 49, 53, 55, 56, 60]
<자연수에 대한 관계 를 정의하면 모든 n에 대해 모든 수보다 작지만 고유하지는 않습니다. 나는 이것이 비슷한 것이라고 생각합니다. 이 방법으로 나는 4 명만이 자신의 자손이라고 생각합니다 (그러나 확실하지 않습니다).