Questions tagged «quine»

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

11
Tri-interquine-三个程序在一个循环中互相输出
相关:Interquine 程序A在运行时输出程序B的代码,B输出C的源代码,而C输出A的源代码。 这次您不能交换两个字符并再次交换:) 要求: 所有程序中只有一种语言 适用标准漏洞限制 所有程序都不同。输出自身的一个程序没有资格。互相输出的两个也没有资格。 所有程序都是非空的,或者长度至少为1个字节。 没有什么阅读,因为标准输入连接到/dev/null(你可以,如果你滥用该规则可以)。输出进入标准输出。 不要使用会产生随机结果的函数。 额外: 如果可能,给出解释 得分是最短程序的长度(您可以从短程序中生成长程序吗?)。请写下所有程序的长度,并突出显示最小的数字。尾随换行符不计算在内。最低分获胜。
10 code-golf  quine 

1
辐射硬化的环状喹poly胶
挑战 编写两个程序: 以两种不同的编程语言运行。 这些可能不是一种语言的两个版本。 当运行一个程序时,它将输出第二个程序,反之亦然。 这两个程序必须不同(不能使用多语言)。 这里是要抓住的地方: 程序必须经过辐射加固。 这意味着从两个程序中的任何一个删除任何一组nnn字符(定义如下)时,其功能均不受影响。 nnn定义为在不影响程序功能的情况下可以省略的字符数。 nnn必须至少为111。 规则 不允许出现标准漏洞。 您的程序必须是正确的循环奎因。他们可能不阅读自己的源代码。 计分过程如下: S1+S2nS1+S2n\frac{S_1+S_2}n S1S1S_1S2S2S_2 nnn 这是代码挑战,最低分获胜。 奖励 由于这个挑战很难回答,因此我将悬赏第一人回答。

5
这是Anagram Quine,而不仅仅是Quine!
任务 在这个挑战中,您的任务是编写一个程序,该程序不输入任何内容,而要使用尽可能多的拼写形式。 您的分数将是程序源代码中有效有效字词的字谜数量除以可能的正确字谜总数,即有效字谜的字谜百分比。 适用标准漏洞和标准奎因规则。 注意:您的程序必须至少包含3个字符(而不是3个字节)。 输入值 程序本身的每个字谜(或排列)(即分数中包含的字谜)都不得输入任何内容。如果您的语言需要输入,那么可以假定您的程序将获得由小写字母A组成的字符串。但是,您不得以任何方式使用输入。 输出量 n程序源代码的不同字谜的数量必须是有效的quines,其中n代表您要包含在乐谱中的那些字谜的数量,即 那些quina-anagarams可以以任何方式输出,除非将输出写入变量。允许写入文件,控制台,屏幕等。功能return也是允许的。 计分范例 假设程序的源代码是code。和, code输出code。 coed输出coed。 cdoe输出cdoe。 cdeo输出cdeo。 cedo输出cedo。 ceod输出ceod。 ocde输出ocde。 oced输出oced。 odce输出odce。 odec不输出odec或产生错误。 oedc不输出oedc或产生错误。 oecd不输出oecd或产生错误。 doce不输出doce或产生错误。 doec不输出doec或产生错误。 dcoe不输出dcoe或产生错误。 dceo不输出deco或产生错误。 deco不输出deco或产生错误。 deoc不输出deoc或产生错误。 eodc不输出eodc或产生错误。 eocd不输出eocd或产生错误。 edoc不输出edoc或产生错误。 edco不输出edco或产生错误。 ecdo不输出ecdo或产生错误。 ecod不输出ecod或产生错误。 该解决方案的分数将是 获胜标准 得分最高的解决方案获胜!如果出现平局,则具有较高字符数(而不是字节数)的答案将获胜(因此,代码保龄球就可以了!)如果平局仍然存在,那么早先发布的解决方案将获胜!

3
期间2反向Quine
您的任务是编写一个程序,以反向输出其自己的源代码。但是,当运行反向代码时,应以正确的方向输出源代码。 例 说你的程序是abc。运行时,应输出cba。cba,运行时应输出abc。 规则 您的程序应遵循适当的规则的所有规则(输出源代码除外)。回文禁止。 随机说明:我知道这一点,但是我相信这个挑战是不同的,因为转换后的代码必须具有相同的属性。
10 code-golf  quine 

6
N个碱基中的回文数
给定一个非负整数n >= 0,请永远输出x_i >= 3以完全n不同b的底数为回文数的整数序列,底数可以是2 <= b <= x_i-2。 这基本上是OEIS A126071的反函数,在此输出中该序列中的哪些索引具有值n。有点不同,因为我更改了它,所以您忽略了碱基b = x_i-1, x_i, x_i+1,因为这些碱基的结果始终是相同的(值始终是回文率,或者始终不是)。此外,偏移量也不同。 x_i限制为数字,>= 3因此每个结果的第一项n为A037183。 请注意,输出格式是灵活的,但是应该以很好的方式分隔数字。 例子: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 13 14 22 23 25 29 35 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

4
写一个半喹
假设您有2种语言,A并且B。如果满足以下条件,则字符串s为准字符串:AB s是语言的奎因A。 s在一个多语种A和B。 s作为B程序运行的输出是一个不同的字符串s',它是B。 这项挑战的目标是用两种不同的语言编写一个半喹啉。这是代码高尔夫球,因此最短的代码获胜,最早的答案用作决胜局。 规则 仅接受真正的奎因。也就是说,您需要将整个源代码原样输出到STDOUT,而无需: 直接或间接阅读您的源代码。 依靠REPL环境,该环境仅评估并打印您提供给它的每个表达式。 依靠在某些情况下仅能打印出源代码的语言功能。 使用错误消息或STDERR编写全部或部分的藜。(您可以将内容写到STDERR或生成警告/非致命错误,只要STDOUT是有效的Quine,并且错误消息不属于其中即可。) 此外,您的源代码不能仅由文字(无论是字符串文字,数字文字等)和/或NOP组成。例如,`12在Jelly和Pyth中是polyglot,但在Jelly中则是NOP和数字文字,因此无效。 为了有效,可以在输出中忽略任何不可抑制的输出(例如版权声明,启动/关闭消息或尾随换行符)。 多义规则 所使用的两种语言必须明显不同。特别是: 它们不能是同一语言的不同版本(例如,Python 2与Python 3)。 它们不能是同一语言的不同方言(例如Pascal与Delphi)。 一种语言可能不是另一种语言的子集(例如C vs. C ++ 1)。 一种语言可能不是另一种语言的琐碎派生词(例如Matlab与Octave 2,brainfuck与boolfuck,TinyBF,ShadyAsFuck与所有其他琐碎的Brainfuck派生词)。 杂项规则 您可能不接受来自STDIN(或任何其他来源)的输入。如果您选择的语言必须接受输入,则输入必须为空(空字符串,通过/dev/null等管道传输),或者程序的输出不得依赖于输入。 对于这个挑战,您必须编写一个完整的程序。不允许要求其他代码来运行解决方案(例如,分配和调用解决方案中定义的lambda函数)。 1:是的,我知道C并不是C ++的真正子集。但是,它足够接近以至于可以用于多重标记的目的,因此我将其归为这一挑战。 2:就像上面的第1点一样,尽管从技术上来说Octave与Matlab并非100%兼容,但它的设计是兼容的,并且足够接近以允许使用Matlab / Octave多重音色可以简化挑战。

1
Meta quine检查器
如果接受的话,这个挑战就是编写三个函数或程序A,B和C: A是输出所有A,B和C(这也是您提交的代码的全部内容)的方法。 B接受参数F并检查它是这样的奎因(输出FBC)还是做其他事情。 C接受参数G并检查G是否可能像B一样工作(检查F是否输出FGC)。不可能确定一个函数是否是quine检查器,所以让我们做一些简单的事情: 如果G对于B有效,则必须返回true。 如果G对所有有效的quines返回false,或者G对所有有效的非quines返回true,则必须返回false。 如果是其他情况,它可以返回任何内容,崩溃或不终止等。 注意,B是可能的。A和F没有任何输入,因此您可以运行它们并检查结果。 规则 应该有某种方法可以从A的输出中分辨出哪些部分是A,B和C。例如:每个部分只有一行,或者它们在解释器中被识别为三个功能。 每个函数都应仅使用自身的定义运行,而不应使用完整的代码。 您可以使用功能/程序或其源代码,或将两者都用作B(或G)和C的输入。 您可以将真/假重新定义为这些值的子集。您还可以始终要求F返回您选择的某种类型,例如单个字符串。 如果使用有效参数调用A,B,F和G,则始终不需要这些类型的其他输入或副作用,例如访问全局变量或读取stdin等。 您也可以假设F和G(如果使用有效参数调用它们)总是终止。 F应该在与A相同的条件下工作。因此,它不能依赖于B或C或另一个变量的存在,除非该变量在其输出中自己定义。 没有函数或程序可以读取其自己的源代码。 这是代码高尔夫,以字节为单位的最短代码(它是A的输出)。
10 code-golf  quine 

4
用quine写一个二进制计数器
编写两个代码片段,我们将它们称为s_zero和s_one。 程序(l,n)由s_zero和s_one的l个副本组成,对应于二进制中n的数字,并在左侧填充s_zero。 例如,如果s_zero = foo和s_one =,bar则 程序(4,0 )= foofoofoofoo 程序(4,1)= foofoofoobar 程序(4,2)= foofoobarfoo 等等。 程序(l,n)必须将程序(l,(n + 1)mod(2 ^ l))的源打印为标准输出。在上面的示例中,执行时foobarfoofoo必须打印foobarfoobar。 您的分数是片段s_zero和s_one的长度之和

4
圣诞南瓜!
用您选择的语言编写一个程序,该程序以圣诞树的形状排列,并以相同的形状打印。 不允许的内容: 打印出源文件 只是因为语句是文字而被解释器回显的语句(例如,仅使用python中的树形列表塔)

5
订单数量
编写一个程序,当以不同的语言运行时,以每种语言输出不同的代码字节排列。确切的源代码计为一个排列。 这里的“不同语言”可以是不同的版本(Py 2和Py 3)或不同的标准标志。不同的输出会强制使用不同的版本。 适当的Quine规则适用于每种语言的程序。您的分数计算为(Language count)^6/(Code length in bytes),分数越高越好。 样品: 如果您的代码是,AAB并且以三种不同的语言运行,则返回ABA,AAB和AAB,则其得分为2^6/3(仅是两种AAB计数之一)。如果ABA没有意义,那很好。

8
最长的周期重复
众所周知,quine是一个输出自己的源代码的程序。但是,也可以编写一个输出另一个不同程序的程序,该程序再次输出第一个程序。例如,Python 2程序 x = '''x = {} print 'print '+'"'*3+x.format("'"*3+x+"'"*3)+'"'*3''' print 'print '+'"'*3+x.format("'"*3+x+"'"*3)+'"'*3 运行时将输出以下文本: print """x = '''x = {} print 'print '+'"'*3+x.format("'"*3+x+"'"*3)+'"'*3''' print 'print '+'"'*3+x.format("'"*3+x+"'"*3)+'"'*3""" 当作为Python程序运行时,这将再次输出原始代码。这被称为迭代奎因。因为您必须运行两次才能取回原始代码,所以我们说它的周期为2。但是,当然可以有更高的期限。 您面临的挑战是用您选择的语言编写一个尽可能长的迭代quin,以100字节或更小字节为单位。(请注意,我上面的示例不符合此规范,因为它是119个字节,包括结尾的换行符。) 请注意以下规则和说明: 通常采用奎因规则,即您的程序不能使用允许其直接访问其自身源代码的语言功能。 迭代后的输出最终必须精确地循环回到您的原始代码,并且您必须提供演示或证明。 您还必须说明循环为何如此长。这不必一定要经过数学证明,但应该可以说服熟悉您的语言的人。(这条规则在这里是因为我希望某些答案涉及非常大的数字。) 只要提供“至少1,000,000次迭代”之类的信息,而不是给出确切的数字,就可以了,只要您可以证明它至少那么长即可。在这种情况下,您的分数将是1,000,000。否则,您的分数就是您的寿命。 100字节的限制仅适用于您的初始程序-它输出的程序可能会更长,尽管它们最终最终必须回落到100字节才能输出原始代码。 您可以假定您的计算机具有无限的RAM和无限的运行时间,但是如果您的语言没有无限的精度数据类型(例如整数),则不能假定它们。您可以假设解析器可以处理的输入长度没有限制。 最高分获胜。 请注意:存在一个称为“ 戒烟”的挑战;启动Quining,这也涉及迭代quines。但是,除了基于相同的概念外,这些挑战是完全不同的类型。另一个是直线打高尔夫,而这个(故意!)确实是一个因变相而忙碌的海狸问题。能够很好地回答这个问题所需的技术可能与回答另一个问题所需的技术完全不同,而这在设计上是非常不同的。

6
转置奎因
在这种quine变体中,程序必须输出其源代码,该源代码从左上角到右下角跨对角线转置。例如: 你的程序 上 四行 输出 yof ono u u r r p l r i o n g e r s a m 输出中的空格不是任意的。在两种情况下会出现空格:原始文件中有空格(例如,第四列之间r和l之中),并且必须填充字符(例如,第一列中的所有空格)。这两者都是必需的,并且空格不能出现在任何地方其他在输出中。 输出中的单个尾随换行符可以有选择地忽略。源代码中的尾随换行符对输出没有影响,并且源代码中的前导换行符必须按照上面的示例进行处理。假定不是换行符的每个字符都是一列宽和一行高,即使对于诸如tab这样的字符,这也可能导致难看的输出。 您的解决方案必须至少有两行,每行至少有两个非换行符,并且不得为自己的转置(输出不能与源相同)。 不允许从包含源代码的文件中读取作弊的quine,从URL中提取数据,使用内置的quining内建等等。 这就是代码高尔夫:以字节为单位的最短代码获胜。
10 code-golf  quine 

7
高尔夫代码:弗雷序列(I)
挑战 在此任务中,您将得到一个整数N(小于10 ^ 5),输出N阶的Farey序列。 输入N在单行中给出,输入由EOF终止。 输入项 4 3 1 2 输出量 F4 = {0/1, 1/4, 1/3, 1/2, 2/3, 3/4, 1/1} F3 = {0/1, 1/3, 1/2, 2/3, 1/1} F1 = {0/1, 1/1} F2 = {0/1, 1/2, 1/1} 约束条件 输入数量不会超过10 ^ 6个值 您可以使用任何选择的语言 最短的解决方案获胜!
10 code-golf  math  code-golf  math  code-golf  number  number-theory  code-golf  math  arithmetic  repeated-transformation  code-golf  geometry  popularity-contest  code-golf  code-golf  tips  haskell  math  fastest-algorithm  code-golf  combinatorics  code-golf  math  polynomials  rational-numbers  code-golf  code-golf  popularity-contest  javascript  code-golf  kolmogorov-complexity  code-golf  code-golf  math  combinatorics  permutations  code-challenge  restricted-source  random  array-manipulation  code-challenge  generation  code-golf  code-golf  ascii-art  arithmetic  division  code-challenge  number  code-golf  math  number  binary  code-golf  ascii-art  code-golf  interpreter  stack  code-golf  internet  networking  code-golf  math  code-golf  ascii-art  code-golf  math  sequence  code-golf  hello-world  restricted-source  code-golf  ascii-art  code-golf  geometry  code-golf  kolmogorov-complexity  pi  code-golf  math  combinatorics  permutations  code-golf  math  code-challenge  ascii-art  code-golf  string  code-golf  quine  code-golf  math  floating-point  golfscript  code-golf  string  code-golf  sliding-puzzle  code-challenge  arithmetic  code-golf  math  code-golf  geometry  optimized-output 

2
粉末玩具中打高尔夫球的技巧
玩得开心,“粉玩具”是高尔夫运动中一个有趣的挑战,尤其是在摆球逻辑方面。 使TPT成为挑战的是许多解决问题的方法: Should I use Cellular Automaton rules, SWCH logic, Filt logic, subframe filt logic, and/or wall logic? 这样,TPT高尔夫球技巧的位置将非常有帮助,因此我提出了这个问题。 该线程可能会使用很多缩写。其中很多都是游戏中的元素,因此在Wiki上进行搜索会带给您很多有关它们的信息,例如它们的外观。 这是您可能在此主题中看到的最常见的内容,并附有游戏内描述(及其全名),以供不希望搜索的人使用: SPRK:电力。TPT中所有电子设备的基础是沿着电线和其他导电元件传播的。 过滤:过滤。过滤光子,更改颜色。 ARAY:Ray Emitter。光线碰撞时会创建点。 BTRY:电池。产生无限电。 DRAY:复印机射线。复制前面的一行粒子。 CRAY:粒子射线发射器。创建由其ctype设置的粒子束,范围由tmp设置。 SWCH:切换。仅在打开时进行。(PSCN打开,NSCN关闭) 所有元素清单
9 code-golf  tips  the-powder-toy  code-golf  number  array-manipulation  integer  code-golf  string  decision-problem  boggle  code-golf  array-manipulation  average  code-golf  math  code-golf  decision-problem  restricted-source  code-golf  code-golf  math  primes  code-golf  random  code-golf  tips  perl  code-golf  string  parsing  code-golf  math  number  decision-problem  code-golf  math  number  code-golf  string  alphabet  code-golf  math  geometry  code-golf  interpreter  brainfuck  code-golf  code-golf  decision-problem  boggle  code-golf  math  number  sequence  code-golf  math  code-golf  ascii-art  code-challenge  restricted-source  quine  code-golf  math  decision-problem  number-theory  primes  code-golf  ascii-art  code-golf  integer  graph-theory  chess  code-golf  math  interpreter  code-golf  code-golf  code-golf  ascii-art  code-golf  arithmetic  number-theory  code-golf  string  kolmogorov-complexity  code-golf  string  decision-problem  code-golf  primes  factoring  encode  code-golf  decision-problem  code-golf  geometry  grid  code-golf  quine  code-golf  matrix  code-golf  matrix  code-golf  code-golf  number  array-manipulation  code-golf  array-manipulation  sorting  code-golf  matrix  code-golf  brain-flak 

5
滴答奎因炸弹!
挑战: 创建一个采用整数输入的程序或函数,该程序或函数输出一个新的程序/函数,如下所示。 输入: 整数n:时间炸弹爆炸前的时间(以秒为单位)。 输出: 以秒n为单位的时间输入的原始程序将输出执行以下操作的新程序/功能: 已经n过去了秒自上次程序运行?打印BOOM! 否则:打印一个程序/函数,该程序/函数在自身运行时将计时器重置为n秒(并且与第一个输出的程序/函数相同)。 注意:它与第一个输出的程序/函数不完全相同(至少在大多数语言中是这样),因为开始时间已更改(请参见下面的说明示例)。 伪代码示例: 假设原始程序是ABC,输入是60秒: ABC&60输出DEF(60)。 如果DEF(60)在60秒内运行,它将输出DEF_G(60),其作用与DEF(60),但是具有新的开始时间。 如果DEF(60)在60秒后运行,它将输出BOOM!。 澄清示例“开始时间”的含义: 输入60秒的基本程序在处运行12:00:00。它以开始时间输出第一个输出程序12:00:00。 开始时间为的第一个输出程序在12:00:00处运行12:00:45。它以开始时间输出第二个输出程序12:00:45。 开始时间为的第三个输出程序在12:00:45处运行12:01:25。它输出开始时间为的第四输出程序12:01:25。 开始时间为的第四个输出程序在12:01:25处运行12:05:00。它将输出BOOM!。 请注意,第一个输出将BOOM!在之后输出12:01:00,但是输出程序已进行,因此即使12:01:25在第3步,它仍将输出下一个程序,而不是输出BOOM!(因为输出程序的开始时间超过了第一个输出程序) 。 挑战规则: 默认的规则是规则。 至少n应该过去几秒钟。因此,如果输入为60,开始时间为12:00:00,12:01:00则仍然会输出v2程序,但12:01:01会输出BOOM!。 输出程序将不接受任何输入(除了较短的空未使用参数外)。开始时间应以“硬编码”值的形式提供给下一个程序(这就是为什么输出程序的输出与前一个程序(在大多数语言中)不完全相同的原因。 仅以字节为单位计算主程序/功能的大小。 您可以将程序/函数输出为字符串(或相当合理的格式,例如字节/字符数组/列表),如果您的语言支持,则输出为函数,也可以输出其他合理格式(请询问您是否不确定)。 通用规则: 这是 代码高尔夫球,因此以字节为单位的最短答案会获胜。 不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 标准规则适用于您的答案,因此您可以使用STDIN / STDOUT,具有正确参数的函数/方法和返回类型的完整程序。您的来电。 默认漏洞是禁止的。 如果可能的话,请添加一个带有测试代码的链接。 另外,如有必要,请添加说明。
9 code-golf  quine  date 

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.