Mackey 는 자신이 말하는 모든 것에 "m'kay"를 추가 한 것으로 유명한 South Park 캐릭터입니다.
맥키 씨의 말로 텍스트 문자열을 변환하는 프로그램이나 함수를 작성하십시오.
M'kay 배치
m'kay
갖는 임의의 확률이 50 % 첨가되는 구두점을 후,
,.
,?
및!
. 이 경우 앞에 오는 공백과 같은 문장 부호가 뒤 따릅니다.예를 들어, 문장 에는 쉼표 뒤에 그리고 마침표 뒤에 각 장소에서 50 %의 확률로 추가 할 수있는
Test, test.
두 곳이m'kay
있습니다. 가능한 결과는 다음과 같습니다Test, m'kay, test
. 또는Test, test. M'kay.
나Test, m'kay, test. M'kay.
.항상 하나 이상
m'kay
추가 해야합니다 . 또한 항상 같은 장소에m'kay
있을 수는 없으며 추가 할 수있는 각 유효한 장소 는 반드시 같은 확률로 발생해야합니다. 즉,m'kay
임의성으로 인해 결코 추가하지 않은 경우 문자열 끝에 항상 추가 할 수는 없습니다m'kay
. 이 하나만있는 경우 존재하는 경우m'kay
에도 유효한 각 위치에 나타날 확률이 동일해야합니다.경우
m'kay
이후?
,.
또는!
의를m
대문자로해야합니다.의 수
m
에서이m'kay
uniformely, 즉 (1)과 (3) 사이에 촬상되어야한다m'kay
,mm'kay
그리고mmm'kay
이 대문자로되어야하는 경우 (규칙 위 참조) ... 0.33 확률로 모든 가능한 선택, 각이며, 모두m
대문자되어야한다.
입력, 출력
입력은 ASCII Dec 32 (Space)에서 ASCII Dec 126 (Tilde
~
) 까지의 문자를 포함하는 ASCII 문자열 입니다. 입력에 줄 바꿈이 없습니다. 입력 내용 중 하나 이상이 포함되어 있다고 가정 할 수 있습니다, . ? !
.m'kay
입력에 해당 변형 이 없거나 있다고 가정 할 수 있습니다 .STDIN, 함수 인수, 명령 행 또는 이와 유사한 항목에서 입력을 가져올 수 있습니다.
출력은 STDOUT, 함수 리턴 또는 이와 유사한 것을 통해 이루어질 수 있습니다.
테스트 사례
- 입력:
Test.
가능한 출력 : Test. M'kay.
- 입력:
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.
가능한 출력 : 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.
- 입력:
Drugs are bad, so, if you do drugs, you're bad, because drugs are bad. They can hurt your body, cause drugs are bad.
가능한 출력 : 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.
- 입력:
Do you understand? Really? Good!
가능한 출력 : Do you understand? MM'kay? Really? Good! MMM'kay!
채점
이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다. m'kay?
M'kay
, 구두점 뒤에 무작위로 50 %의 확률이 추가됩니다..,? 및! "는 " 적어도 하나 이상 m'kay
추가 되어야합니다 "와 호환되지 않는 것 같습니다 . 그 명확히하십시오