Mr Mackey adalah karakter South Park yang terkenal karena menambahkan "m'kay" dalam semua yang dia katakan.
Tulis sebuah program atau fungsi yang mengubah serangkaian teks menjadi sesuatu yang akan dikatakan Mr. Mackey.
Penempatan mungkin
m'kay
memiliki 50% kesempatan acak dari yang ditambahkan setelah tanda baca,
,.
,?
dan!
. Jika demikian, maka akan diikuti oleh tanda baca yang sama persis yang mendahuluinya dan didahului oleh spasi.Misalnya, dalam kalimat
Test, test.
, ada dua tempat yangm'kay
dapat ditambahkan: setelah koma, dan setelah periode, dengan peluang 50% di setiap tempat. Kemungkinan hasil akanTest, m'kay, test
. atauTest, test. M'kay.
atauTest, m'kay, test. M'kay.
.Harus selalu ada setidaknya satu yang
m'kay
ditambahkan . Selain itu, tidak dapat selalu berada di tempat yang sama dan setiap tempat yang valid di manam'kay
dapat ditambahkan harus terjadi dengan probabilitas yang sama. Artinya, Anda tidak dapat menambahkanm'kay
selalu di akhir string jika karena keacakan Anda tidak pernah menambahkanm'kay
. Jika hanya ada satum'kay
, itu harus memiliki probabilitas yang sama muncul di setiap posisi yang valid, meskipun keberadaannya ditegakkan.Jika
m'kay
setelah?
,.
atau!
,m
harus ditulis dalam huruf besar.Jumlah
m
inm'kay
harus dipilih secara seragam antara 1 dan 3. Yaitum'kay
,,mm'kay
danmmm'kay
semua pilihan yang mungkin, masing-masing dengan probabilitas 0,33 ... Jika itu harus dituliskan dengan huruf besar (lihat aturan di atas), semuam
harus ditulis dengan huruf besar.
Input, output
Input adalah string ASCII yang berisi karakter dari ASCII Des 32 (Spasi) hingga ASCII Des 126 (Tilde
~
). Tidak ada linebreak pada input. Anda dapat mengasumsikan bahwa input apa pun akan mengandung setidaknya satu dari, . ? !
.Anda dapat berasumsi bahwa tidak ada
m'kay
atau variannya di input.Input dapat diambil dari STDIN, argumen fungsi, baris perintah, atau yang serupa.
Output dapat melalui STDOUT, fungsi kembali, atau yang serupa.
Uji kasus
- Memasukkan:
Test.
Output yang mungkin: Test. M'kay.
- Memasukkan:
Programming Puzzles & Code Golf Stack Exchange is a question and answer site for programming puzzle enthusiasts and code golfers. It's 100% free, no registration required.
Output yang mungkin: Programming Puzzles & Code Golf Stack Exchange is a question and answer site for programming puzzle enthusiasts and code golfers. MMM'kay. It's 100% free, mm'kay, no registration required.
- Memasukkan:
Drugs are bad, so, if you do drugs, you're bad, because drugs are bad. They can hurt your body, cause drugs are bad.
Output yang mungkin: Drugs are bad, m'kay, so, if you do drugs, you're bad, m'kay, because drugs are bad. They can hurt your body, m'kay, cause drugs are bad. M'kay.
- Memasukkan:
Do you understand? Really? Good!
Output yang mungkin: Do you understand? MM'kay? Really? Good! MMM'kay!
Mencetak gol
Ini kode-golf , jadi kode terpendek dalam byte menang, m'kay?
M'kay
memiliki peluang acak 50% untuk ditambahkan setelah tanda baca ,,.,? dan! " tampaknya tidak sesuai dengan " Selalu harus ada setidaknya satu m'kay
tambahan ". Tolong jelaskan itu