간단합니다. 캐릭터를 제거해도 여전히 퀴인 적절한 퀴네를 만드십시오 .
이것과 방사선 경화 퀴네의 차이점은 프로그램이 AB방사선 경화 퀴네 A에서는 출력 AB되지만 여기서는 출력 된다는 A것 A입니다.
코드 골프, 모든 표준 규칙, 표준 허점이 적용되며 부정 행위가 없습니다.
AB출력해야합니다 AB.
간단합니다. 캐릭터를 제거해도 여전히 퀴인 적절한 퀴네를 만드십시오 .
이것과 방사선 경화 퀴네의 차이점은 프로그램이 AB방사선 경화 퀴네 A에서는 출력 AB되지만 여기서는 출력 된다는 A것 A입니다.
코드 골프, 모든 표준 규칙, 표준 허점이 적용되며 부정 행위가 없습니다.
AB출력해야합니다 AB.
답변:
이 답변은> <>의 점프 명령을 사용하여 문제를 해결합니다.
!<0078*+00~..>0[!."r43a*+8a+&{ee+00&1-:&(?.~~ol?!;4b*0.0f<>0['r3d*159*+&}7a*00&1-:&(?.~~ol?!;68a*+0.0+*a58
이 quine에는 실제로 두 개의 다른 quine generator가 있습니다. 몇 가지 점프 로직으로 시작하며 기본적으로 왼쪽 퀴인을 사용합니다. 점프 로직 또는 왼쪽 퀴네에서 문자가 제거되면 프로그램이 오른쪽 퀴네로 점프합니다.
코드는 몇 부분으로 나눌 수 있습니다.
A: !<0078*+00~..>0[!.
B: >0[!."r43a*+8a+&{ee+00&1-:&(?.~~ol?!;4b*0.
C: .0f<
D: >0['r3d*159*+&}7a*00&1-:&(?.~~ol?!;68a*+0.
E: .0+*a58
다른 부분에 대한 설명 :
명령 포인터가 quine 중 하나에 도달하면 해당 quine이 완전히 손상되지 않은 것입니다.
>0[!. //Fix the instruction pointer's direction and empty the stack (The '!.' is a leftover from codepart A)
"r43a*+ //Start reading all of the code and add the '"' character to the stack
8a+& //Because the quine started reading at the 19th character instead of the first, the stack has to move 18 characters.
//This part saves the number 18 to the register.
{ee+00&1-:&(?. //Move the stack one to the left, decrease the stack by 1. If the stack is not empty yet, jump back to the start of this section.
~~ //Clean the temporary variables from the stack. It should now contain the whole quine.
ol?!;4b*0. //Print the first character from the stack. As long as the stack isn't empty, jump back to the start of this section.
이 널 문자 수는 다음과 같습니다.
453997365974271498471447945720930600149036031871190716908688344432973027776681259141680552038829875159204621651993092104775733418288411812715164994750890484868305218411129600012389568016974351721147925344946382782884546247102886167837964612372737300786173159265347137401863281368021545169383664534228503236761742285358985343373496184959796553930661837467682191561275123057706776367104142995491262443697167483190110516522677811931124842961701222425076750211774387637740969301686178545299089832300154448308384461700726890067468872402133010536518468336342175124002115991866466700174974019423711837589532744970385003356612639263433822126850314801275940879069069974437167102618471264140597777702065896715558989678487253830854848740247786166790545462769498303055791292
이 도전에 대한 기준이 어떻게 "적절한 키네"의 정의와 충돌 하는지를 보면, 나는 단항 변형이 이길 것이라고 생각합니다.
확장 된 Brainfuck 코드 :
>>+++>++++++++>+++>+++>+>+>+>+>+>+>+>+++>+>+>+>+>+>+>+>+>+++>+>+>+>+>+>+>+>+>++++++++>++++>++++++++>++++>+++++++>++>+++>+>+++>++>+++>+++>+>+>+>+>+>+>+>+>++++>++++>+++++++>+>++++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>+++++>++++++++>++++>+++++++>+++++++>+>+>+++>+>+>+>++++++++>+++>+++++++>+>+++>+>+++>+>+++>+>++++++++>++++>++++++++>++++>++++++++>++++>++++>+>+++>+++>++>+++++++>+++++++>+>+>+>++++++++>+++>+>++++++++>++++>+>+++>++>+++++++>++>+++++++>++++>++++>++++++++>+++>++++++++>+++>+++>+>++++>++++>++>+++++++>+++>+++>++++++++>++++>+>+++>++>+++++++>++++>++++>+++++++>+++>+++>+++>+++>++++++++>++++>++++>+>+++>+>+++>++>+++++++>+++++++
[
[->+>+<<]
>>>>[<<[->+<]>>[-<<+>>]>]
<<[-[->+<]+>]+++
[[->>+<<]<]<
]
+>+>+>+
[>]+++>++
[
[<].
>[-]>[-]>[-]>[-]
<+[<<++++++++>>->+>-[<]<]
++++++++>++++++++>+++++++>>
]
.
Lenguage 프로그램에서 하나의 문자가 제거되면 마지막 문자가로 바뀌어 프로그램이 <정확히 하나의 문자를 더 적게 인쇄합니다.