다크 나이트 의 개막 현장 에서 CIA 요원과 악당 베인 사이에는 다소 어색한 대화 가 있습니다.
CIA 요원 : "그 [마스크]를 벗으면 죽겠습니까?"
베인 : “매우 고통 스러울 것입니다…”
CIA 요원 : "당신은 큰 사람입니다."
바람개비 : “… 당신을 위해.”
베인이“당신을 위해 고통 스럽다”또는“당신을 위해 큰 사람”이라고 말하려고하는지 확실하지 않습니다. 코드 골프를 통해이 문제를 한번에 해결합시다!
도전
당신의 작업은 입력으로 주어진 정수에 따라 위의 대화를 재정렬하는 프로그램을 작성하는 것입니다.
CIA 상담원 대화 단어는 다음과 같습니다.
If I pull that off will you die? You're a big guy.
베인의 대화 단어는 다음과 같습니다.
It would be extremely painful... for you!
유의하시기 바랍니다 die?, You’re, painful...그리고 you!하나의 단어로 간주됩니다.
- 정수 n이 입력으로 주어지면 이진수로 변환
- 이진수를 왼쪽에서 오른쪽으로 읽으면 숫자가이면 CIA 에이전트 대화 상자
1에서 다음 단어를, 숫자가이면 Bane 대화 상자에서 다음 단어를 출력하십시오0. 단어는 공백으로 구분해야합니다. 스피커가 바뀌면 줄 바꿈을 추가하십시오. 또한 각 대화 줄 앞에 발표자 이름 (BANE:또는CIA:)을 붙 입니다.
입력은 항상 이진 형식의 1로 시작하고 12는 1이고 7은 0이라고 가정 할 수 있습니다.
예
522300
이진으로 변환 :
1111111100000111100숫자는 8 개로 시작하므로 CIA의 상담원 대화에서 8 개의 첫 단어를 출력하고 CIA로 접두어를 붙입니다.
CIA: If I pull that off will you die?그리고 우리는 5 개의 0을 얻었고, Bane의 대화에서 5 개의 첫 단어를 얻었습니다
BANE: It would be extremely painful...그런 다음 4 개의 단어가 있으므로 4 개의 다음 CIA 단어를 출력합니다.
CIA: You’re a big guy.그런 다음 2 개의 0
BANE: for you!
최종 결과:
CIA: If I pull that off will you die?
BANE: It would be extremely painful...
CIA: You’re a big guy.
BANE: for you!
더 많은 테스트 사례 :
494542
CIA: If I pull that
BANE: It would be
CIA: off
BANE: extremely
CIA: will you die? You're
BANE: painful... for
CIA: a big guy.
BANE: you!
326711
CIA: If
BANE: It would
CIA: I pull that off will you
BANE: be extremely painful... for
CIA: die? You're
BANE: you!
CIA: a big guy.