Non, je me suis trompé dans la dernière étape, je compte des mots qui n'existent pas, mon 135 est trop élevé.
On peut tricher et faire un calcul correct en utilisant les outils combinatoires de SageMath :
- Code: Tout sélectionner
P=Permutations(5*["A"]+3*["B"]+4*["C"])
M=[p for p in P if all(p[i]!=p[i+1] for i in range(11))]
len(M)
588
Pour les mots qui commencent par A et finissent par C :
- Code: Tout sélectionner
N=[p for p in M if (p[0]=="A" and p[-1]=="C")]
len(N)
102
Moins que 135 !
On peut voir la liste des mots qui commencent et finissent par B :
- Code: Tout sélectionner
[p for p in M if (p[0]=="B" and p[-1]=="B")]
[['B', 'A', 'B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'C', 'B'],
['B', 'A', 'B', 'C', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'A', 'C', 'A', 'B', 'A', 'C', 'A', 'C', 'A', 'C', 'B'],
['B', 'A', 'C', 'A', 'B', 'C', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'B', 'A', 'C', 'A', 'C', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'B', 'C', 'A', 'C', 'A', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B', 'A', 'C', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B', 'C', 'A', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'C', 'B', 'A', 'B'],
['B', 'A', 'C', 'A', 'C', 'A', 'C', 'B', 'A', 'C', 'A', 'B'],
['B', 'A', 'C', 'A', 'C', 'B', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'A', 'C', 'B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'C', 'A', 'B', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'C', 'A', 'C', 'A', 'B', 'A', 'C', 'A', 'C', 'A', 'B'],
['B', 'C', 'A', 'C', 'A', 'C', 'A', 'B', 'A', 'C', 'A', 'B'],
['B', 'C', 'A', 'C', 'A', 'C', 'A', 'C', 'A', 'B', 'A', 'B']]
Il y en a 16.
Bon, tout ça ne donne pas un bel argument combinatoire pour le dénombrement ...