使辐射硬化奎因


14

昨晚,我在寻找“辐射硬化奎因”挑战,但找不到。原来还没有人问!所以这里是:

您的任务是制作一个quine,这是一个非空的计算机程序,可以打印其自身的源而不读取它。另外,如果您从原始程序中删除任何一个字节,则新程序应打印原始程序的源。

这是因此答案以字节计分,而字节越少越好。



也相关(重复而不是删除)
JungHwan Min

1
是不是问了1.5年来又没有答案,然后又删除了b / c用户帐户被删除了还是什么?并不是说我不希望+1。只是发誓我已经看过了。
魔术章鱼缸

@MagicOctopusUrn我认为它存在。我想回答,但是找不到。如果有人发现了旧的,我很乐意自己锤一下。
发布Rock Garf Hunter '18

我也找不到。我一定会慢慢发疯。
魔术章鱼缸

Answers:


7

Gol> <>49个 45字节

<<H~Kla}\`q%2l}}ss2"<\
<<H~Kla}\`q%2l}}ss2"<\

在线尝试!

验证!

我在Gol> <>而不是> <>中进行了此K操作,因为前者具有方便的运算符,可复制n堆栈中的顶级项目,这使复制原始代码的副本变得更加容易。

说明:

这可以通过执行代码的两个副本,并在第一个副本损坏时重定向到第二个副本来实现。当\删除最后一个或中间的换行符时,此操作将失败,这两者都将在以后进行补偿。

<<                       Redirect left 
                    <\  Switch to other source code if this line is irradiated
                   "     Push source with wrapping string literal
                ss2      Push quote
              }}         Move "< to end
          q%2l           If the length of the stack is not right
        \`               Push an extra \
       }                 Move the \ to the end
      a                  Newline
    Kl                   Duplicate the stack
   ~                     Pop the extra newline
  H                      Halt and print stack

我打了2个字节!
KrystosTheOverlord


我只是意识到自己做错了,抱歉,如果缺少一组字符,该程序将无法正常工作……
KrystosTheOverlord

@KrystosTheOverlord您可以使用验证程序来测试您的程序
Jo King
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.