Questions tagged «quine»

quine是一个程序,它产生其源作为输出。该标签表明挑战与奎因有关。

14
“ Hello world”创建了一个不同的“ Hello world”程序
创建一个程序,该程序输出一个hello world字符串(“ Hello world”,“ Hello,World”等)和源代码。输出被写入标准输出或等效输出。Hello world字符串嵌入在源代码中。 例如,的输出可能是 (some source code here)hello world(some source code here) 再次编译或解释输出时,它应该创建类似的输出,但是hello world字符串必须具有不同的标点符号或大写字母。例如,上一个示例可以创建以下输出 (some source code here)hello, wORld(some source code here) 这些示例中的每个“(此处有一些源代码)”可以在每次执行后更改,也可以相同。 您的输出必须只包含一次有效的hello world字符串。它可能包含任意数量的无效的hello world字符串。源代码可以包含任意数量的注释,并且hello world字符串可以嵌入注释中。第一个程序可以有零个或一个有效的hello world字符串,但不能再有。 以下标点符号有效: hello, world hello world helloworld 任何大写字母都可以接受。例如,以下是有效的hello world字符串: Hello, world hellO WORld HELLoworlD 这些字符串无效: Hello world Hello(newline)world Hello,world Hello, …

8
广义奎因发生器
挑战 在此挑战中,您将指定源语言 S和目标语言 T。您的任务是P用该语言编写以下程序S。如果输入了有效Q语言的程序T作为输入P,它将以有效R语言T输出没有输入和输出的有效程序Q(R),即Q应用于的源代码的程序R。此外,您应该在答案中提供一个简单的示例程序Q(越有趣,越好,尽管您对此没有得分),结果程序R以及的输出R。这是代码高尔夫球,因此是P获胜的最短代码。 换句话说,这对于编写一个可以创建任意类型的广义quines的“通用quine构造函数”是一个挑战。 澄清说明 您的源语言和目标语言可能相同。 程序P应采用一个字符串作为输入(来自STDIN或等效的字符串),并输出一个字符串(至STDOUT或等效字符串),每个输出程序也应如此R。 输入程序Q还应该将一个字符串转换为另一个字符串,但是它们的形式更加灵活:它们可以是字符串到字符串的函数,可以使用特定名称修改变量的代码段,可以使用目标语言来修改数据堆栈的代码段有一个,等等。您还可以Q通过声明例如可能不包含任何注释来进一步限制的形式。但是,您必须能够将任何可计算的字符串到字符串函数实现为输入程序Q,并且必须明确说明它们的功能以及对它们施加的进一步约束。 输出程序R实际上应该是一个(通用的)quine,所以除非Q这样做,否则它不得读取任何输入(用户输入,文件等)。 不允许出现标准漏洞。 一个例子 假设我选择Python作为源语言,选择Haskell作为目标语言,并且进一步要求输入程序应该是String -> String名为的函数的单行定义f。如果我提供反向字符串程序 f x = reverse x 作为我的Python程序的输入P,它将输出另一个Haskell程序的源代码R。该程序将的源代码打印到STDOUT R,但相反。如果P赋予身份功能 f x = x 作为输入,输出程序R是一个quine。

7
Y2K…在2019?
今天是2019年8月10日,但是您的任务仍然涉及Y2K。奇怪吧? 创建一个可打印的程序,并在其后附加两位数字。首次运行时,应在其输出后附加00(其源代码,因为这是quine变体)。运行该输出时,没有两位数字的原始程序应该输出原始程序,但要附加01。运行该输出以获取附加02的OG程序,然后运行以03附加该程序。此链应持续到99。该程序应输出BREAKING NEWS: WORLD ENDS。 如果您的程序是Y2Kparanoia: yes: 它应该输出 Y2Kparanoia: yes00 该输出应打印 Y2Kparanoia: yes01 该输出应打印 Y2K paranoia: yes02 重复执行直到步骤100:此程序输出指定的世界末日新闻 这是代码高尔夫,因此可以遵循这些步骤进行打印的最短程序胜出。
18 code-golf  quine 

4
建立一个半基数循环奎
半基数环状喹是具有两种状态的环状喹,一种与另一种垂直。 规则 您可以决定要实现的旋转是顺时针还是逆时针。 旋转后,应将代码中的任何空格替换为空格以保留位置。 您的程序必须满足quine的社区定义。 这是代码高尔夫球,因此每种语言中最短的程序将获胜。您的第一个程序用于您的字节数。 禁止出现标准漏洞。 例子 如果您的程序是: $_='print';eval 然后,下一个迭代必须是: $ _ = ' p r i n t ' ; e v a l 要么 l a v e ; ' t n i r p ' = _ $ 必须输出原始程序: $_='print';eval 如果您的程序是: ;$_='; ;$_='; print 然后,下一个迭代必须是: ;; …

7
俄罗斯嵌套奎因
一个俄罗斯嵌套娃娃,通常被称为一个俄罗斯套娃,是包含一个缩小版的自己,一个洋娃娃,然后包含自己的另一个较小的版本,其中包含一个较小的版本的本身,它包含自身的缩小版,其本身包含一个较小的版本...-直到最后一个,最后一个为空。一个例子: 今天,您的目标是通过编写一个程序或函数来模仿这种俄罗斯传统,当该程序或函数包含N次时,将打印包含N-1次自身的副本。 例如,玩偶程序abcd将具有N = 3程序abababcdcdcd,该程序将打印N = 2程序ababcdcd,该程序将打印原始的N = 1程序abcd,最后打印N = 0的程序,该程序为空。从理论上讲,这应该适用于任何合理的N值。 规则: 这是一个TIO程序,可帮助您根据程序生成玩偶程序 适用标准Quine规则 适用标准漏洞 “包含”是指直接在先前版本的中心,因此您的解决方案必须具有正偶数个字节。长度为10的程序将在第五个字节之后插入原始副本,然后在第十个字节之后插入另一个副本,依此类推。 输出中允许单个尾随空格 由于这是code-golf,因此您的目标是使N = 1程序尽可能短。 您的代码的解释将不胜感激

8
输出源,一次一位
编写一个非空程序或函数,当被调用时输出单个值1或0,并且被多次调用时,输出数字将生成程序源代码的二进制表示形式(在编译代码的同一代码页中) /解释)。 例如,如果您的源代码是abc(ASCII),则输出将是: 1st call: 0 // ASCII letter 'a' 2nd call: 1 3rd call: 1 4th call: 0 5th call: 0 6th call: 0 7th call: 0 8th call: 1 9th call: 0 // ASCII letter 'b' 10th call: 1 11th call: 1 12th call: 0 13th call: 0 …

8
退出码字符串输出
必须编写一个程序或函数,给定当非空字符串小号的Ñ打印的ASCII字符†,输出一个程序,将与退出代码退出Ç,其中Ç是在位置0处的ASCII码点小号。您编写的该程序将另外输出一个程序P,以便在运行时以退出代码C'退出,其中C'是S中位置1的ASCII码点。程序P将输出另一个程序P'。重复此过程,直到S中没有剩余字符为止。完成此操作后,您必须输出任何内容,后跟可选的换行符;并应以退出代码0退出。 †0x20和之间的字符(0x7e含)。 其他一些规则: 不允许自修改程序:您必须将源输出到STDOUT(或最初返回值) 您可能无法阅读自己的源代码。 以字节为单位的此类最短程序将获胜。 对于某些基本测试,可以使用此ruby脚本。(第一个参数是调用脚本的方式,第二个参数是程序,第三个参数是输入字符串。) 假设的例子 说程序是FOO。给定字符串“ ABC”时,输出BARA。此程序代码退出65并输出BARB。依次返回代码66和输出BARC。此程序代码退出67并输出BAR!。这不会输出任何内容,并使用code退出0。
18 code-golf  quine 

8
输入号码;输出行号
高尔夫代码 完全真实的背景故事:我是在网站www上工作的承包商。Sky.Net和我们的任务之一就是创建一些自我意识的程序或其他东西,我不知道我不是在听老板的话。无论如何,为了使我们的代码更具自我意识,我们需要IT部门能够知道每个行号上的代码。 挑战 创建一个接受输入n并在线返回所述程序或函数代码的程序或函数n。 规则 program您的程序或函数必须至少有4行。每行必须唯一。 ➋您可以假设输入将始终是一个大于或等于1且小于或等于程序/函数中的行数的正整数。 program程序/功能的第一行是第1行,而不是第0行。 can您无法访问程序所在的文件。(如果有人要问“这在技术上是否违反规则4”,可能是) ➎行不能为空(如果空格对您的语言没有任何作用,则必须包含空格) ➏行不能是//注释(任何<!-style的/ *) 这是一个类似于quine的挑战, 这是code-golf,所以字节最少的提交会获胜!
18 code-golf  quine 

9
元多语奎因
在使用PPCG时,我注意到奎因问题和多语种问题非常流行。同样,问题的元解决方案,即生成解决问题的程序的脚本,往往会得到社区的很多积极反馈。因此,我创造了这个挑战,实现了这三个想法。 然后,作为读者和代码高尔夫球爱好者,您的任务是创建一个尽可能短的脚本,该脚本可以在两种语言A和B中运行以为A和B生成奎因。当您的程序以语言A运行时,它应该生成一个程序使用语言B 而不是语言A的程序,反之亦然。语言A和B可以是同一语言的不同版本,但要记住,生成的Quines仅应在其中一种版本中起作用。 请记住,应该将标准漏洞视为封闭的,并且仅允许使用适当的奎因。 祝你好运,最少的角色获胜!

11
源代码GO!
让我们使用增强现实技术来狩猎隐藏在源代码中的小动物。编写一个quine程序,该程序输出自己的代码源,但5个连续的字符将被修改并显示PCG-mon除外:(^_^) 可以将5个连续的字符放置在源代码中的任何位置(从position 0到n-5,n即源代码的长度)。源代码的最小长度必须为5个字符。(^_^)长度大于等于2 的字符串或其任何子字符串不得出现在初始源代码中,而只能出现在输出中。 有效提交示例: 源代码my source code,输出my (^_^)e code 无效: 源代码(^_^) copy;,输出(^_^) (^_^) 获奖标准 以字节为单位的最短代码获胜。

4
一周中压缩的天数
输入星期几列表,则输出列表中最短的排序表示形式。 输入的格式是由一个或多个双字符子串的字符串Su(星期日), Mo(星期一), Tu(等), ,We,Th, Fr和Sa。输入不一定必须以排序的顺序给出。 要将输入转换为输出格式, 从星期天开始按星期几对输入进行排序(例如ThMoSaSuFrTuWe-> SuMoTuWeThFrSa)。 如果不引起歧义,请将缩写词减少到一个字母。例如,之所以SuMoTuWe成为,SMTW是因为第一个S不可能在星期六,因为这样会使输出未排序(与T相同)。但是,ThFrSa应该成为ThFS,因为星期二和星期四都在星期五之前,并将其减小以TFS产生歧义。 如果输出为now MTWTF,则D改为输出(代表“ 工作日 s”)。同样,SS应该成为E一周结束。最后, SMTWTFS应该成为A对所有天。 输入和输出都必须是单个字符串。 由于这是code-golf,因此以字节为单位的最短代码为准。 测试用例: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | TuThSu STT Su Su | Sa Sa WeTh WT | FrTh ThF WeTu …

4
不断增长的奎因序列
您将编写一个p1 p2 ... p10满足以下属性的10个程序的序列: pK打印pK+1为K从1到9 p10 版画 p10 当第一个K程序连接在一起,产生的程序p1...pK打印p1...pK。 每个程序的pK字节大小必须大于以前的程序pK-1。 所有程序必须使用相同的语言。 Q允许内置的奎因功能(例如,多种语言)。 您的分数是10个程序的字节数之和。由于只有十个程序,因此您必须使代码尽可能短。祝好运。

12
我认识你,但你不认识我
您的任务是编写两个程序。程序A不得在所有输入上打印任何内容,除非输入了程序B,否则应打印1。程序B必须1在所有输入上打印出来,但输入程序A时除外,在这种情况下,它不应打印任何内容。 得分: +1对于两个程序中的每个字符。 最低分获胜。
18 code-golf  quine 

1
打个双奎因让您更美好!
女士们,先生们,晚上好。 今晚-我们面临代码挑战。比赛的定义不是分数(小行星),而是您是否可以完成比赛(塞尔达传说)。为了比较起见,字节的数量(呃...但是你说...)。 您面临的挑战是编写一个可以同时在WhiteSpace和您选择的任何其他语言中编译的quine 。这两个Quines必须具有绝对相同的输出(作为Quine与源代码绝对相同)。quine的长度必须大于3个字节。 您的分数是源代码的大小(以字节为单位)。 鉴于此挑战涉及WhiteSpace,请逃避您的答案,以使它们清晰可见-最好采用C风格。您的分数是原始来源(以字节为单位),而不是转义版本。 祝好运。

30
消失的元素
给定一个字符串S和一个索引列表X,S通过删除每个索引处的元素来进行修改,并将S结果作为的新值S。 例如,给定S = 'codegolf'和X = [1, 4, 4, 0, 2], 0 1 2 3 4 5 6 7 | c o d e g o l f | Remove 1 c d e g o l f | Remove 4 c d e g l f | Remove 4 c …
17 code-golf  string  array-manipulation  code-golf  string  ascii-art  code-golf  number  sequence  pi  code-golf  number  array-manipulation  code-golf  string  ascii-art  code-golf  math  number  game  code-golf  math  sequence  polynomials  recursion  code-golf  math  number  sequence  number-theory  code-golf  permutations  balanced-string  code-golf  string  ascii-art  integer  code-golf  decision-problem  hexagonal-grid  code-golf  ascii-art  kolmogorov-complexity  code-golf  number  code-golf  matrix  binary-matrix  code-golf  math  statistics  code-golf  string  polyglot  code-golf  random  lost  code-golf  date  path-finding  code-golf  string  code-golf  math  number  arithmetic  number-theory  code-golf  tetris  binary-matrix  code-golf  array-manipulation  sorting  code-golf  number  code-golf  array-manipulation  rubiks-cube  cubically  code-golf  grid  optimization  code-golf  math  function  code-golf  string  quine  code-golf  ascii-art  grid  code-golf  decision-problem  grid  simulation  code-golf  math  sequence  code-golf  path-finding  code-golf  ascii-art  grid  simulation  code-golf  number  whitespace  code-golf  sequence  code-golf  sequence  code-golf  sequence  integer  code-golf  math  game  code-golf  internet  stack-exchange-api  code-golf  sequence  code-golf  internet  stack-exchange-api  code-golf  math  factoring  code-challenge  sequence  polyglot  rosetta-stone  code-golf  string  browser  code-golf  date  code-golf  base-conversion  code-challenge  cops-and-robbers  hello-world  code-golf  cops-and-robbers  hello-world 

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.