Setelah desas-desus bahwa Codegolf akan mengadakan turnamen Rock-Paper-Gunting Anda melihat ke dalam topik kata-kata bebas persegi . Sebuah kata yang terbuat dari huruf R
, P
, S
adalah persegi bebas jika tidak mengandung urutan yang mengulangi dua kali. Artinya, kata itu tidak bisa ditulis sebagai
a x x b
di mana a
dan b
adalah kata-kata dari setiap panjang dan x
adalah kata panjang setidaknya satu, semua terbuat dari huruf R
, P
, S
.
Tugas
Menulis sebuah program yang menghasilkan persegi bebas kata-kata dari huruf-huruf R
, P
, S
panjang n
di mana jumlah 1 <= n <= 10
diambil sebagai masukan.
Contoh
Misalnya kata - kata bebas persegi panjang 3 adalah
RPR
, RSR
, RPS
, RSP
, SPS
, SRS
, SRP
, SPR
, PRP
, PSP
, PSR
,PRS
dan yang panjangnya 4 adalah
RPRS
, RPSR
, RPSP
, RSRP
, RSPR
, RSPS
, PRPS
, PRSR
, PRSP
, PSRP
, PSRS
, PSPR
, SRPR
, SRPS
, SRSP
, SPRP
, SPRS
,SPSR
dan perhatikan bahwa misalnya SPSP
atau PRPR
tidak bebas persegi
Aturan
- Ini codegolf, kemenangan program terpendek, celah standar ditutup.
- Anda dapat mencetak kata-kata atau membuatnya dalam memori.
- Program Anda dapat ditulis sebagai fungsi.
Referensi
Entri Wikipedia pada kata-kata bebas persegi
Jumlah kata terner bebas persegi dengan panjang tertentu ada di https://oeis.org/A006156
Terkait: Kata-kata Ternary Squarefree Sewenang-Wenang-Panjang
n>3
akan menjadi ide yang baik, karena telah ada beberapa kebingungan tentang karakter yang berulang vs urutan yang berulang.