Cette question est intéressante, est d'autant plus difficile qu'il n'y paraît, et il n'a pas été répondu. La question peut être pris en compte dans 2 questions très différentes.
1 étant donné N, trouver la liste L de N facteurs premiers
2 compte tenu de L, calculer le nombre de combinaisons uniques
Toutes les réponses que je vois à ce jour reportez-vous à #1 et de ne pas mentionner qu'il n'est pas docile pour un nombre énorme. De taille modérée N, même en 64 bits, il est facile, pour d'énormes N, de l'affacturage problème peut prendre "pour toujours". Chiffrement à clé publique en dépend.
Question #2 a besoin de plus de discussions. Si L ne contient que des numéros uniques, c'est un simple calcul à l'aide de la combinaison de la formule de choisir k objets parmi n objets. En fait, vous avez besoin de faire la somme des résultats de l'application de la formule en faisant varier k de 1 à sizeof(L). Cependant, L contiennent généralement plusieurs occurrences multiples des nombres premiers. Par exemple, L = {2,2,2,3,3,5} est la factorisation de N = 360. Maintenant ce problème est assez difficile!
En retraitant #2, compte tenu de la collection de C contenant k éléments, tels que le point a a un "doublons, et le point b a b" doublons, etc. combien de combinaisons uniques de 1 à k-1 les articles sont là? Par exemple, {2}, {2,2}, {2,2,2}, {2,3}, {2,2,3,3} chacun doit se produire une fois et une fois seulement si L = {2,2,2,3,3,5}. Chacun de ces sous-collection est un unique diviseur de N en multipliant les éléments de la sous-collection.