6, 12, 20, 30, 42, 56, 60, 90, 120 등과 같은 일부 숫자는 아래와 같이 연속 정수의 곱으로 표현할 수 있습니다.
6 = 2 * 3
12 = 3 * 4
30 = 5 * 6
60 = 3 * 4 * 5
90 = 9 * 10
120 = 4 * 5 * 6
제품이 지정된 숫자와 동일한 연속 정수 목록을 출력하는 프로그램 또는 함수를 작성하십시오.
이 논리에 적합하지 않은 숫자의 예는 다음과 같습니다.
99 = 9 * 11 (Product of non-consecutive numbers)
121 = 11 * 11 (Same numbers)
2 = 1 * 2 (Product of itself and 1)
13 = 13 (Product of only one number)
의 경우에는 2 = 2 * 1
1을 곱한 정수가 동일한 결과를 제공하므로 유효한 결과로 간주하지 않습니다. 이 질문에서는 제품에서 정수> = 2 만 고려합니다.
입력
유효한 32 비트 양의 정수 표준 입력, 함수 인수 등이 될 수 있습니다.
산출
연속 정수>> 2의 목록 (오름차순 또는 내림차순). 연속 정수의 여러 조합이있는 경우 하나의 인스턴스 만 제공하십시오 . 더 많이 제공하면 괜찮습니다.
제한 사항
모든 유효한 입력 (양수 32 비트 정수) 에 대해 표준 컴퓨터 에서 실행하려면 코드가 적당한 시간 (<5 분)이 소요 됩니다. 연속적인 정수 곱이있는 경우 코드는 제한 시간 내에 하나 이상을 출력해야합니다. 그렇지 않으면 코드는 제한 시간 내에 출력없이 종료되어야합니다.
이것은 코드 골프이므로 바이트 단위의 가장 짧은 코드가 이깁니다.
30=5*6
.