По чутках, що у Кодегольфа відбудеться турнір "Рок-папір-ножиці", ви заглянете в тему слів без квадратних слів . Слово з букв R, P, Sє бесквадратним , якщо вона не містить послідовність , яка повторюється двічі. Тобто слово не можна писати як
a x x b
де aі bслово будь-якої довжини і xслово довжини принаймні один, все з букв R, P, S.
Завдання
Написати програму , яка генерує бесквадратние слова з букв R, P, Sдовжини , nде число 1 <= n <= 10береться в якості вхідних даних.
Приклад
Наприклад, слова без квадрата довжиною 3 є
RPR, RSR, RPS, RSP, SPS, SRS, SRP, SPR, PRP, PSP, PSR,PRS
і довжини 4 є
RPRS, RPSR, RPSP, RSRP, RSPR, RSPS, PRPS, PRSR, PRSP, PSRP, PSRS, PSPR, SRPR, SRPS, SRSP, SPRP, SPRS,SPSR
і зверніть увагу , що, наприклад , SPSPабо PRPRНЕ бесквадратние
Правила
- Це кодовий гольф, найкоротші виграші програми, стандартні лазівки закриті.
- Ви можете надрукувати слова або створити їх у пам'яті.
- Ваша програма може бути записана як функція.
Список літератури
Запис у Вікіпедії на квадратних словах
Кількість безквадратичних потрійних слів заданої довжини наведено на https://oeis.org/A006156
Пов’язані: Слова довільної довжини «Потрійні квадратні вільні слова»
n>3було б хорошою ідеєю, оскільки була певна плутанина щодо повторних символів проти повторних послідовностей.