호기심 많은 아이는 숫자 나 표현을 다음과 같은 형태로 분해 할 수있는 프로그램을 사용합니다 p1^e1 * p2^e2 * ... * pn^en
. 같은 지수 1
는 생략360 = 2^3 * 3^2 * 5
아이는이 입력을 프로그램에 새로운 입력으로 입력하지만 ^
부호를 이해하지 못하기 때문에 때때로 해당 소수와 지수를 연결하는 사람들 중 하나 이상을 건너 뜁니다. 예 :(360 =) 2^3 * 3^2 * 5 => 2^3 * 32 * 5 (= 1280)
이러한 실수로 인해 다시 입력 할 수있는 다른 인수 분해를 얻을 수 있습니다 (0 이상 건너 뛰기 ^
). 인수 분해가 더 이상 변경되지 않을 때까지 프로세스를 반복합니다 (더 이상의 결과가 없거나 ^
출력을 올바르게 복사했을 수 있음).
정수 n
( n>1
) 가 주어지면 가능한 모든 숫자를 순서대로 증가시키는 프로그램이나 함수를 작성해야합니다 n
. 예를 들어 입력 16
가능한 최종 분해는 다음과 같습니다.(16 =) 2^4, (24 =) 2^3 * 3, (23*3 =) 3 * 23
입력 세부 사항 :
- 입력이보다 큰 단일 정수
1
- 보다 큰 출력 번호를 생성하는 입력이 제공되지 않습니다
2^31-1
1000
출력 수 보다 많은 수를 생성하는 입력이 제공되지 않습니다
출력 세부 사항 :
- 귀하의 언어에 편리한 형태의 정수 목록
예 :
입력 => 출력
11 => 11
16 => 16 24 69
360 => 140 360 770 1035 1219 1280 2875 3680
605 => 560 605 840 2415
2048 => 211 2048
58564 => 230 456 1311 2508 9975 12768 13794 20748 58564 114114 322102
이것은 코드 골프이므로 가장 짧은 프로그램이 승리합니다.