Dado un entero positivo siempre se puede encontrar una tupla de enteros tal que k_1 \ cdot k_2 \ cdot ... \ cdot k_m = n y k_1 | k_2 \ text {,} k_2 | k_3 \ text {,} \ ldots \ text {,} k_ {m-1} | k_m.
Aquí a | b significa que b es un múltiplo de a , digamos "a divide b". Si n> 1, todas las entradas k_i deben ser al menos 2 . Para n = 1 no tenemos ese factor y, por lo tanto, obtenemos una tupla vacía.
En caso de que tenga curiosidad de dónde proviene esto: esta descomposición se conoce como descomposición de factor invariante en la teoría de números y se utiliza en la clasificación de grupos abelianos finitamente generados.
Desafío
Dado salida a todas esas tuplas para la dada exactamente una vez, en el orden que desee. Se permiten los formatos de salida de secuencia estándar .
Ejemplos
1: () (empty tuple)
2: (2)
3: (3)
4: (2,2), (4)
5: (5)
6: (6)
7: (7)
8: (2,2,2), (2,4), (8)
9: (3,3), (9)
10: (10)
11: (11)
12: (2,6), (12)
108: (2,54), (3,3,12), (3,6,6), (3,36), (6,18), (108)
Relacionado: http://oeis.org/A000688 , Lista todas las particiones multiplicativas de n
12,3,3
)