Questions tagged «code-generation»

对于希望答案产生代码的挑战。

8
上升还是下降?
给定山羊的图像,您的程序应该最好尝试识别山羊是否倒置。 例子 这些是输入可能是什么的示例。不是实际的投入 输入: 输出: Downgoat 规格 您的程序最多应为30,000个字节 输入将包含完整的山羊 图片将始终包含山羊 如果山羊倒立,输出Downgoat,否则Upgoat 输入将是您可以将图像作为输入(文件名,图像的base64等)。 要点文件名仅供参考,不要依赖于包含“ Upgoat”或“ Downgoat”的图像名称或其他元数据。 请不要硬编码。这很无聊,我无法完全执行它,但是我可以很好地询问。 测试用例 要点与图像。开头的图像downgoat具有Downgoat输出和图像开始与upgoat有Upgoat输出。 第二批测试用例 确保在所有测试用例上测试图像。这些图像是jpgs。图像大小确实有所不同,但没有说太多。 注意:在接受答案之前,可以添加一些测试用例,以避免使用硬编码的答案并检查程序的总体性能。 正确获得我的头像的奖励积分:P 计分 分数是可以通过以下方式计算的百分比: (number_correct / total) * 100


18
鲁伯·戈德堡你好世界
对于这种高尔夫,您将需要使用多种语言。 任务 一鲁布·戈德堡机器是一个玩意儿,需要以执行一个非常简单的任务的复杂步骤的数量巨大。这项高尔夫运动的目标是输出Rube Goldberg...但不直接输出。 机器 您的“机器”是源代码,一旦执行,将提供另一种语言的另一种源代码,该源代码将Rube Goldberg在执行时输出。得到它了? 我改一下:您的初始代码必须提供另一个代码,该其他代码必须输出Rube Goldberg。两种代码必须用不同的语言编写。 奖金更像是唯一有趣的方式 如果您的代码输出的代码将输出将输出...的代码,则有好处Rube Goldberg。 注意:可以使用任何类型的输出(stdout,stderr,对话框等) 要点 点数等于代码中使用的字节数除以您使用的独特的,额外的语言的数量。 注意:不同的语言使用不同的编码。字节数以其自身的编码以初始语言计数。 例子 Pyth -> J -> Javascript -> output30字节= 30/2 = 15点(J和Javascript是额外的语言) Java -> C# -> C++ -> PHP -> output在36个字节中= 36/3 = 12点(更多的字节和更多的语言可以赢得更少的字节和更少的语言(我知道这些语言不可能在36个字节中做到这一点)) C -> output10字节= 10/0 = 无限点(无其他语言) Python -> Perl -> Ruby …

30
生成100个Java Tuple类
编写一个脚本,将其写到标准输出或您的语言的等效输出中,以以下内容开头的100行Java代码: class Tuple1 {public Object _0;} class Tuple2 {public Object _0,_1;} class Tuple3 {public Object _0,_1,_2;} class Tuple4 {public Object _0,_1,_2,_3;} class Tuple5 {public Object _0,_1,_2,_3,_4;} class Tuple6 {public Object _0,_1,_2,_3,_4,_5;} class Tuple7 {public Object _0,_1,_2,_3,_4,_5,_6;} class Tuple8 {public Object _0,_1,_2,_3,_4,_5,_6,_7;} class Tuple9 {public Object _0,_1,_2,_3,_4,_5,_6,_7,_8;} class Tuple10 {public Object …

30
生成;#代码
相关于:进行;#解释器 在上述链接的挑战中,任务是为深奥的语言创建一个解释器;#。 该;#语言 该语言正好有两个命令:;和#(所有其他字符都会被解释器忽略): ;:增加累加器 #:将累加器乘以127,打印相应的ASCII字符并将累加器重置为0。 挑战 因为我很懒,但是仍然想测试更多的测试用例,所以我需要一个将纯文本转换为;#代码的程序或函数。 输入值 输入是一个字符串,作为参数或通过标准输入。它仅包含可打印的ASCII字符和换行符。 输出量 输出是;#通过返回或打印到stdout 生成的程序。只要程序有效,它就可以包含除#和以外的多余字符,;因为所有其他字符都将被忽略。 例子 Input: Hello, World! Output: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;# Input: ABC Output: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;# Input: ;# Output: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;# 排行榜 显示代码段 var QUESTION_ID=122139,OVERRIDE_USER=73772;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in …

27
具有唯一字符的代码生成器
挑战 您的任务是编写一段代码,输出另一段代码。该代码必须依次输出另一个代码,直到最终代码输出整数1为止。链端在第一时间1被输出。 您的任何程序都不得共享任何字符(“规则”部分中只有一个例外)。 获奖作品将是链条最长的作品。决胜局将是最短的总代码长度。 规则: 您可以同时使用函数,程序和代码片段。您可以假设一个REPL环境。 所有功能必须使用相同的语言编写 禁止使用与符号无关的语言。这包括部分独立于符号的语言,例如Headsecks。 默认输出格式可以有选择地在函数的输出中忽略。这包括尾随换行符ans =等。 您可以重复使用空格字符(ASCII代码点32),但请注意以下几点: 您可以在其中一个功能中使用任意多个空格字符,但在所有其他功能中将其限制为最多5个 如果代码点32在您的语言中不是空格,则不能重复使用任何字符。 没有任何程序可以输入 该链必须至少两个程序长。 例: 您的初始代码是abc+cab+bac。输出:foofoo*123,依次输出disp(~0),输出1。这是一个由3个程序组成的链,总长度为29(决胜局)。

15
生成数字1–255的Brainfuck
编写一个程序,对于从1到255的数字,将打印出BF代码,该代码将在数组的某个字节中生成给定的数字,并加上换行符。 例如,输出的前四行可能(并且很可能会)是: + ++ +++ ++++ 获胜者将最小:(source code + output以字节为单位)。 澄清与修订: BF程序使用包装单元。 输出BF程序必须以唯一的非零单元格为包含数字的单元格终止。 程序必须以升序输出。 输出为0的程序是可选的。 不允许使用负数据指针。<在第一个指针将什么都不做。(如果更合适,请发表评论)

22
引爆一根弦
给定任何字符串,以三角形的形式打印它,其中文本沿每个对角线上下移动。例如,输入的"Hello World"应输出: d l r d o l W r d o l o W r d l o l l o W r d e l o l H l o W r d e l o l l o W r d l o l o W r …

13
1-平均你的平均成本
阿1向上喹是一个程序,它是非常类似于一个喹。一个主要的区别是,当连接n个程序副本时,结果不会打印自身一次,而是将原始程序打印n + 1次。 例 如果您的程序是Abc123: Abc123 -> Abc123Abc123 Abc123Abc123 -> Abc123Abc123Abc123 Abc123Abc123Abc123 -> Abc123Abc123Abc123Abc123 挑战 您面临的挑战是创建任何语言中最短的有效1-up quine。通常采用奎因规则,因此您可能不会: 提交空程序。 直接或间接读取1源代码。 使用内置的奎因。 这是代码高尔夫球,因此以字节为单位的最短代码获胜。 1这不包括在程序中使用硬编码的字符串或代码块。

7
三个多义词,两个句点,两个奎因和一个密码高尔夫球挑战
产生一个程序A,以便以语言A运行它会产生程序B,而以语言B运行程序A会产生程序C。 以语言B运行时,程序B生成程序A,以语言A运行程序B时生成程序C。 程序C以语言A或语言B运行时,输出“语言错误!”。 Program | Language | Result --------|----------|---------- A | A | Program B B | B | Program A A | B | Program C B | A | Program C C | A | "Wrong language!" C | B | "Wrong language!" 您的答案应使用以下模板: 语言A /语言B,{a字节} + {b字节} …

6
尽最大可能!
该序号系统是无限的数字系统。许多无穷大。如此众多的无穷数字,以至于它实际上没有一个无穷大来表示自己的无限性。上图给出了它们如何工作的一点想法。序数(冯·诺依曼构造)是一组先前的序数。例如,0是空集,1是集{0},2是集{0,1},依此类推。然后我们得到ω,即{0,1,2,3 ...}。ω+ 1是{0,1,2,3 ...ω},ω乘以2是{0,1,2 ...ω,ω+ 1,ω+ 2 ...}然后你会像那。 您的程序将输出一组序数,例如{0,1,4}。这样,您的分数将比集合中所有序数的最低序数高。对于{0,1,4},得分将为5。对于{0,1,2 ...},得分将为ω。 您如何输出您要求的序号。当然是代码。即,您的程序将在每行中用引号输出一个可能无限的其他程序列表(用引号引起来)(使用文字字符串“ \ n”表示新行)。程序对应于其得分,如上所述。例如,如果您输出 "A" "B" "C" 其中A,B和C本身是有效答案,并且得分为{0,1,4},则您的程序的得分为5。请注意,A,B和C必须是完整程序,而不是片段。 根据上述规则,不输出任何内容的程序的得分为0(大于所有{}的最小序数为0)。另外,请记住,根据基础公理,集合不能包含自身。即,每个集合(因此是序数)都具有下降到零的路径。这意味着完整的quine将无效,因为它不是一个set。 另外,不允许任何程序访问外部资源(其自己的文件,互联网等)。另外,在列出分数时,如果可以的话,请将分数的Cantor普通形式放在旁边,如果可以的话(如果没有,则其他人可以)。 考虑以上所有因素后,您发布的实际答案必须少于1,000,000字节(不包括注释)。(此上限可能只会对自动生成的代码起作用)。同样,您可以为不使用的每个字节增加分数(由于我们处理的是无穷大,只有当序数非常接近或相同时,这才可能被考虑在内)。同样,本段仅适用于发布的答案,不适用于生成的答案或生成的答案生成的答案,依此类推。 这具有quine标记,因为生成至少部分源代码自己的代码可能有助于生成大型序言。但是,它绝对不是必需的(例如,分数为5的提交可能不需要其自己的源代码)。 有关示例的注释示例,请参见此处。

14
生成TeX以排版Sierpinski三角分形
挑战 编写输出TeX(LaTeX)数学方程式代码(如下所示)的代码,该代码将对5级的Sierpinski Triangle Fractal进行排版。最短的代码胜出。 细节 TeX(和LaTeX等朋友)是一个复杂的排版系统。它可以为数学公式呈现任意嵌套的复杂表达式。巧合的是,这种“嵌套复合体”也描述了分形。以下是使用MathJaX呈现的 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx{{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}^{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}_{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}} 通过以下由嵌套的上标和下标组成的纯文本数学方程式代码: {{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}^{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}_{{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}^{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}_{{{x^x_x}^{x^x_x}_{x^x_x}}^{{x^x_x}^{x^x_x}_{x^x_x}}_{{x^x_x}^{x^x_x}_{x^x_x}}}}} 请注意,这只是5级嵌套。在TeX&Co中,您不需要生成$...$或不需要$$...$$其他标记来开始/结束数学方程式。您可以在许多在线编辑器中预览生成的TeX,例如:http : //www.hostmath.com,但您可以找到许多其他人也一样。这个问题的灵感来自与朋友的讨论。 更新资料 有一个类似的问题,但是它更笼统,将产生不同的解决方案。我想看到非常固定的简单代码的真正kolmogorov复杂性,它在一个系统(TeX)中是完全显式的,而在另一个系统中则是完全显式的。这也解决了n而不是5级注释。

30
输出输出打印给定输入的脚本的脚本
编写一段以字符串为输入的代码,并以运行时输出初始输入字符串的相同语言输出一段代码。 它必须能够处理字符AZ,az和0-9的任意组合。 Python中的示例: import sys print "print('" + sys.argv[1] + "')" 给定输入testing123,它将返回print('testing123')。 由于这是代码高尔夫,因此以字节为单位的最短答案将获胜。

2
将Brainfuck转换为MarioLANG
MarioLANG是一种二维编程语言,其源代码类似于超级Mario Bros.级别。此外,其指令集与Brainfuck的指令集非常相似。这意味着MarioLANG本质上是2D Brainfuck,指令指针像Mario一样移动。因此,当我为编程语言测验编写我的MarioLANG提交内容时,我首先将Brainfuck转换为“ Hello,World!”。程序到MarioLANG。我注意到,通过非常系统的过程可以做到这一点,因此让我们编写一个Brainfuck-to-MarioLANG编译器! 注意: MarioLANG规范并不是完全明确的,因此我假设是Ruby实现的解释。 我将通过以下Brainfuck程序来解释该过程: ++[>+++++[>+++++++>++++++++++>+++>+<<<<-]<-]>>++.>+.+++++++..+++.>+++.>. 它打印Hello!并在尾随换行符。 分别将<和转换>为(和): ++[)+++++[)+++++++)++++++++++)+++)+((((-](-]))++.)+.+++++++..+++.)+++.). 添加地板让Mario继续前进: ++[)+++++[)+++++++)++++++++++)+++)+((((-](-]))++.)+.+++++++..+++.)+++.). ======================================================================== 现在的问题是MarioLANG没有像[和这样的循环]。取而代之的是,我们必须使用电梯和指示性指令使Mario真正走成一圈。首先,我们将替换[为>并将地板更改为"。我们还替换]为[!并将地板更改为=#: ++>)+++++>)+++++++)++++++++++)+++)+((((-[!(-[!))++.)+.+++++++..+++.)+++.). =="======"===============================#===#============================ 该"和#可以形成电梯(从开始#,在结束"),所以现在我们需要的是辅助地板马里奥走回来的。开始于!和结束于<: ++>)+++++>)+++++++)++++++++++)+++)+((((-[!(-[!))++.)+.+++++++..+++.)+++.). =="======"===============================#===#============================ ! < #===============================" ! < #==========================================" 请注意,所有管线的长度必须至少与最大封闭回路的长度相同,因为解释器无法跨较短的管线连接电梯末端。因此,我们用空格填充中间线。 就是这样。我们有一个功能齐全的等效MarioLANG程序。 挑战 给定有效的Brainfuck程序,请执行上述过程以将其编译为MarioLANG程序。 您可以假设输入中仅包含命令字符,即除之外没有其他字符,.+-<>[]。 所有辅助地板必须尽可能靠近主程序地板。您可以选择尽可能少地填充中间楼层的行(最大封闭循环的宽度),也可以填充到主程序的末尾。 您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行参数或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。如果您不将结果打印到STDOUT,则它仍然应该是一个用换行符分隔的字符串。 这是代码高尔夫球,因此最短的答案(以字节为单位)获胜。 测试用例 测试用例的格式如下:第一行是Brainfuck程序(您的输入),然后有一个空行,直到下一个空行的所有内容都是MarioLANG中的预期输出。这些示例使用最少的填充空间。或者,您可以在每行之间填充空格,使其与输出的第一行的宽度相等。 >,++-.< ),++-.( ======= ,[.,] ,>.,[! ="===# ! < #===" >>[-]<<[->>+<<] ))>-[!((>-))+(([! =="==#=="=======# ! < …

2
关于奎因
受超编程启发:N + N,N×N,N ^ N合而为一。 感谢@MartinEnder和@trichoplax在沙箱中的帮助。 定义 超喹 将阶数为n的超quine 定义为类似于 quine的完整程序或函数P ,该程序或函数P满足适用于适当quines的所有规则,并且具有以下结构。 P是由相同字符的n个副本组成的字符‡组的串联。当执行P时,输出是相同组的串联,再增加一个字符副本。 例子 在源代码aabbcc生成输出的假设编程语言中aaabbbccc,此程序构成2阶的超喹。 该定义并没有要求不同群体的特点是不同的。 如果源代码aabbcc生成输出aaaabbbbcccc,则该程序是1阶的超喹啉; 源代码包含六个单字符组,六个字符对的输出。 在GS2中,将打印空程序\n,然后\n打印程序\n\n。但是,\n也不\n\n是超级喹,因为它们不能满足适当喹的所有特性。源代码的任何部分都不会编码输出的不同部分。 超喹链 将长度为n的超链链定义为满足以下约束的n个完整程序或n个函数(P 1,…,P n)的有限序列。 的输出P 1,...,P N-1是P 2,...,P Ñ,分别。 P 1,…,P n是超喹。 的订单P 1,...,P Ñ形成严格递增的顺序相邻的整数。 最后,将无限个超喹链定义为完整程序或函数(P 1,P 2,...)的无限序列,以使每个初始间隔(P 1,…,P n)构成长度为n的超喹链。 例子 在一种假设的编程语言中,其中的源代码aabbcc生成输出aaabbbccc,然后生成输出aaaabbbbcccc,该对(aabbcc,aaabbbccc)构成长度为2的超喹链。 请注意,aaaabbbbcccc–链中最后一个hyperquine的输出–不必产生特定的输出;它甚至不必是有效的源代码。 继续前面的例子,如果aaaabbbbcccc生成输出aaaaabbbbbccccc,三重态(aabbcc,aaabbbccc,aaaabbbbcccc)构成长度的hyperquine链3。 如果这种模式继续永远,序列(aabbcc,aaabbbccc,aaaabbbbcccc,...)构成的无限hyperquine链。 在对程序(abc,aabbcc与输出)( ,aabbcc)aaaabbbbcccc是不一个hyperquine链,由于hyperquines的命令都是1,所以它们不形成一个严格递增顺序。 在对程序(aabbcc,aaaabbbbcccc与输出)( ,aaaabbbbcccc)aaaaabbbbbccccc是不一个hyperquine链,由于hyperquines的顺序是1和4,所以它们不形成相邻的整数的序列。 规则 任务 …

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.