Mr. Mackey ist ein South Park- Charakter, der dafür bekannt ist, dass er in allem, was er sagt, "m'kay" hinzufügt.
Schreiben Sie ein Programm oder eine Funktion, die eine Textfolge in etwas verwandelt, was Mr. Mackey sagen würde.
M'kay-Platzierung
m'kay
hat eine zufällige 50% ige Chance , nach den Interpunktionen,
.
?
!
hinzugefügt zu werden , und . Wenn dies der Fall ist, wird genau dasselbe Satzzeichen gefolgt von einem Leerzeichen.Im Satz
Test, test.
können beispielsweise zwei Stellenm'kay
hinzugefügt werden: Nach dem Komma und nach dem Punkt mit einer Wahrscheinlichkeit von 50% an jeder Stelle. Mögliche Ergebnisse wärenTest, m'kay, test
. oderTest, test. M'kay.
oderTest, m'kay, test. M'kay.
.Es muss immer mindestens eine
m'kay
hinzugefügt werden . Darüber hinaus kann es nicht immer am selben Ort sein und jeder gültige Ort, an demm'kay
hinzugefügt werden könnte, muss mit gleicher Wahrscheinlichkeit auftreten. Das heißt, Sie können nichtm'kay
immer am Ende der Zeichenfolge hinzufügen, wenn Sie aufgrund von Zufälligkeiten keine hinzugefügt habenm'kay
. Wenn es nur eine gibtm'kay
, muss sie dieselbe Wahrscheinlichkeit haben, an jeder gültigen Position zu erscheinen, auch wenn ihre Anwesenheit erzwungen wird.Wenn
m'kay
nach ist?
,.
oder!
, dasm
muss groß geschrieben werden.Die Zahl der
m
inm'kay
muss gleichmßig zwischen 1 und 3 abgeholt werden Das heißt,m'kay
,mm'kay
undmmm'kay
sind alle möglichen Optionen, die jeweils mit einer Wahrscheinlichkeit von 0,33 ... Wenn es (siehe oben Regel) groß geschrieben werden müssen, allem
müssen groß geschrieben werden.
Eingänge Ausgänge
Eingaben sind ASCII-Zeichenfolgen, die Zeichen von ASCII-Dez. 32 (Leerzeichen) bis ASCII-Dez. 126 (Tilde
~
) enthalten. Die Eingabe enthält keine Zeilenumbrüche. Sie können davon ausgehen, dass jede Eingabe mindestens eine der folgenden Angaben enthält, . ? !
.Sie können davon ausgehen, dass keine
m'kay
oder eine der Varianten in der Eingabe enthalten ist.Eingaben können über STDIN, Funktionsargumente, Befehlszeile oder ähnliches erfolgen.
Die Ausgabe kann über STDOUT, eine Funktionsrückgabe oder ähnliches erfolgen.
Testfälle
- Eingang:
Test.
Mögliche Ausgabe: Test. M'kay.
- Eingang:
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.
Mögliche Ausgabe: 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.
- Eingang:
Drugs are bad, so, if you do drugs, you're bad, because drugs are bad. They can hurt your body, cause drugs are bad.
Mögliche Ausgabe: 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.
- Eingang:
Do you understand? Really? Good!
Mögliche Ausgabe: Do you understand? MM'kay? Really? Good! MMM'kay!
Wertung
Das ist Code-Golf , also gewinnt der kürzeste Code in Bytes, m'kay?
M'kay
hat eine zufällige 50% ige Chance, nach den Interpunktionen hinzugefügt zu werden ,,.,? und! " scheint nicht kompatibel zu sein mit " Es muss immer mindestens eine m'kay
hinzugefügt werden ". Bitte klären Sie das