Ada banyak cara untuk menghasilkan kata-kata acak. Anda dapat mengambil suku kata acak dari suatu set, Anda dapat menggunakan n-tuple, mungkin jaringan saraf (apa yang tidak bisa mereka lakukan?), Berganti-ganti antara konsonan dan vokal, dll. Metode yang mendasari tantangan ini sejauh ini adalah yang terburuk . Ini menggunakan rantai Markov untuk menghasilkan kata-kata acak. Jika Anda akrab dengan rantai Markov, Anda mungkin tahu mengapa metode ini sangat mengerikan.
Jika Anda ingin membaca tentang rantai Markov, klik di sini .
Program Anda akan mengambil input satu atau lebih kata dan menghasilkan satu kata acak, melalui metode rantai Markov tertimbang. Karena itu mungkin masuk akal bagi siapa pun selain saya, berikut adalah penjelasan melalui penggunaan gambar rantai Markov dengan masukan dari abba
:
(Semua bobot tepi sama untuk semua gambar) Program Anda akan menampilkan jalur melalui rantai Markov berdasarkan teks input. Seperti yang Anda lihat, ada 1/2 peluang yang akan dihasilkan a
, 1/8 peluang aba
, 1/16 peluang abba
, 1/32 peluang ababa
, dll.
Berikut adalah beberapa contoh rantai Markov lainnya:
yabba dabba doo
wolfram
supercalifragilisticexpialidocious
Jika Anda ingin lebih banyak contoh, gunakan ini . (Saya bekerja terlalu keras untuk itu)
Detail tantangan:
- Input dapat diambil sebagai daftar string, atau sebagai spasi, koma, atau string yang dipisahkan baris baru
- Anda dapat mengasumsikan bahwa semua kata akan seluruhnya menjadi huruf kecil tanpa tanda baca (ASCII 97-122)
- Anda dapat menulis program atau fungsi
- Untuk menguji, Anda mungkin bisa memasukkan contoh dan melihat apakah semua input sesuai dengan rantai Markov
Ini adalah kode-golf , jadi program Anda dinilai dalam byte.
Beri tahu saya jika ada bagian yang tidak jelas, dan saya akan membuatnya lebih masuk akal.
b
sehingga Anda tidak dapat menghasilkan ganda b
. Terlebih lagi setelah Anda mencapai suatu b
itu, tampaknya tidak mungkin untuk kembali ke start
untuk menghasilkan kata-kata lain). Saya percaya Anda harus mengklarifikasi apa persyaratannya ...
yabba dabba doo
kecelakaan adalah. Saya akan memperbaikinya sesegera mungkin. Mengenai ketidakmampuan untuk memulai kembali, Anda hanya menghasilkan satu kata dari serangkaian kata yang diberikan . Apakah itu memperjelasnya?