Bei dem Gerücht, dass Codegolf ein Rock-Paper-Scissors-Turnier veranstalten wird, beschäftigen Sie sich mit dem Thema der quadratfreien Wörter . Ein Wort der Buchstaben gemacht R, P, Sist Platz frei , wenn es eine Sequenz, die wiederholt nicht zweimal enthalten. Das heißt, das Wort kann nicht als geschrieben werden
a x x b
wo aund bsind Wörter beliebiger Länge und xist ein Wort mit einer Länge von mindestens einem, alle Buchstaben gemacht R, P, S.
Aufgabe
Ein Programm schreiben, das die erzeugt quadratfreie Wörter aus den Buchstaben R, P, Sder Länge , nwo die Zahl 1 <= n <= 10wird als Eingabe genommen.
Beispiel
Zum Beispiel sind die quadratfreien Wörter der Länge 3
RPR, RSR, RPS, RSP, SPS, SRS, SRP, SPR, PRP, PSP, PSR,PRS
und die der Länge 4 sind
RPRS, RPSR, RPSP, RSRP, RSPR, RSPS, PRPS, PRSR, PRSP, PSRP, PSRS, PSPR, SRPR, SRPS, SRSP, SPRP, SPRS,SPSR
und beachten Sie, dass zum Beispiel SPSPoder PRPRnicht quadratfrei sind
Regeln
- Dies ist Codegolf, kürzeste Programmgewinne, Standardlücken sind geschlossen.
- Sie können die Wörter drucken oder im Speicher erstellen.
- Ihr Programm kann als eine Funktion geschrieben werden.
Verweise
Wikipedia-Eintrag zu quadratfreien Wörtern
Die Anzahl der quadratfreien ternären Wörter der angegebenen Länge ist in https://oeis.org/A006156 angegeben
Verwandt: Ternäre Rechteckwörter beliebiger Länge
n>3wäre eine gute Idee, da es einige Verwirrungen über wiederholte Zeichen gegenüber wiederholten Sequenzen gab.