Sur la rumeur que Codegolf aura un tournoi Rock-Paper-Scissors, vous vous penchez sur le sujet des mots sans carré . Un mot en lettres R
, P
, S
est sans carré si elle ne contient pas de séquence qui se répète deux fois. Autrement dit, le mot ne peut pas être écrit comme
a x x b
où a
et b
sont des mots de toute longueur et x
est un mot d' une longueur d' au moins un, tout en les lettres R
, P
, S
.
Tâche
Ecrire un programme qui génère les sans carrés mots des lettres R
, P
, S
de la longueur n
où le nombre 1 <= n <= 10
est pris comme entrée.
Exemple
Par exemple, les mots sans carré de longueur 3 sont
RPR
, RSR
, RPS
, RSP
, SPS
, SRS
, SRP
, SPR
, PRP
, PSP
, PSR
,PRS
et ceux de longueur 4 sont
RPRS
, RPSR
, RPSP
, RSRP
, RSPR
, RSPS
, PRPS
, PRSR
, PRSP
, PSRP
, PSRS
, PSPR
, SRPR
, SRPS
, SRSP
, SPRP
, SPRS
,SPSR
et notez que par exemple SPSP
ou PRPR
ne sont pas sans carré
Règles
- C'est le codegolf, le programme le plus court gagne, les failles standard sont fermées.
- Vous pouvez imprimer les mots ou les créer en mémoire.
- Votre programme peut être écrit en fonction.
Les références
Entrée Wikipedia sur les mots sans carré
Le nombre de mots ternaires sans carré de longueur donnée est en https://oeis.org/A006156
En relation: Mots ternaires sans carré de longueur arbitraire
n>3
serait une bonne idée, car il y a eu une certaine confusion entre les caractères répétés et les séquences répétées.