Bonjour.
J'ai recherché un peu partout sur le net et ce forum mais je n'ai pas trouvé de réponse à mon problème.
Mon niveau en maths, étant ce qu'il est ... je viens quérir votre aide.
J'ai 63 éléments que je peux combiner, ( "a-z" ; "A-Z" ; "0-9" ; "_" )
Je voudrais savoir combien de combinaisons existent pour K objets en utilisant les N objets existants (63) que l'on peut combiner avec répétition mais en respectant les règles pour le premier et dernier caractère que voici :
- le premier caractère doit être une lettre (minuscule ou majuscule)
- le dernier caractère peut être n'importe quel caractère excepté le "_"
- si le mot ne contient qu'un caractère alors c'est la première règle qui s'applique ( uniquement lettre minuscule ou majuscule), autrement dit la première règle est prioritaire.
Pour l'instant tout ce que je sais c'est que c'est forcément inférieur à N^K étant donné les règles de restriction à appliquer, mais je ne vois pas comment calculer le nombre de combinaisons possibles pour K objets :/
EDIT : Hmm, en fait c'est peut être plus simple que je pensais c'est de la forme :
(N-10-1)*(N)*(N)*(N)...*(N-1)
Reste à exprimer cela en équation ou éventuellement en fonction récursive.
pour k >= 2 on peut écrire :
(n-10-1)*(n^(k-2))*(n-1).
Et pour le cas particulier ou k = 1
(n-10-1)
Et pour k == 0, bah y'a 0 possibilités
Peut se résoudre avec un simple if, mais je serais curieux de voir une formule universelle qui fonctionnerait pour tout k entier >0 voir >=0.
Partager