Esta interesante pregunta es mucho más difícil de lo que parece, y no ha sido respondida. La pregunta se puede factorizar en 2 preguntas muy diferentes.
1 dado N, encuentre la lista L de factores primos de N
2 dado L, calcular el número de combinaciones únicas
Todas las respuestas que veo hasta ahora se refieren al número 1 y no mencionan que no es manejable para números enormes. Para N de tamaño moderado, incluso números de 64 bits, es fácil; para N enorme, el problema de factorización puede tomar "para siempre". El cifrado de clave pública depende de esto.
La pregunta # 2 necesita más discusión. Si L contiene solo números únicos, es un cálculo simple que usa la fórmula de combinación para elegir k objetos de n elementos. En realidad, debe sumar los resultados de la aplicación de la fórmula mientras varía k de 1 a sizeof (L). Sin embargo, L generalmente contendrá múltiples ocurrencias de múltiples primos. Por ejemplo, L = {2,2,2,3,3,5} es la factorización de N = 360. ¡Ahora este problema es bastante difícil!
Restableciendo el # 2, dada la colección C que contiene k elementos, de modo que el elemento a tiene 'duplicados, y el elemento b tiene b' duplicados, etc. ¿cuántas combinaciones únicas de 1 a k-1 elementos hay? Por ejemplo, {2}, {2,2}, {2,2,2}, {2,3}, {2,2,3,3} deben aparecer una vez y solo una vez si L = {2,2 , 2,3,3,5}. Cada una de estas subcolecciones únicas es un divisor único de N al multiplicar los elementos de la subcolección.