Questions tagged «code-golf»

Code-golf是在最小的源代码字节中解决特定问题的竞赛。

30
在源代码中生成没有任何数字的数字2014
根据元共识向挑战者发出的注释:这个问题在发布时就很受欢迎,但是像这样的挑战(要求回答者在不使用Y的情况下进行X回答) 很可能会被接受。 如果您要发布类似的挑战,请尝试使用沙盒获取反馈。 这是2017年 2018 2019已经,乡亲们,回家了。 因此,现在是2014年,是时候讨论涉及数字2014的代码了。 您的任务是制作一个打印数字的程序2014,而无需使用0123456789代码中的任何字符,并且与任何外部变量(例如日期或时间或随机种子)无关。 以数字为有效令牌的任何语言执行的最短代码(以字节为单位)将获胜。 排行榜: 显示代码段 var QUESTION_ID=17005,OVERRIDE_USER=7110;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 s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i; body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px} <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> ...

30
“你好,世界!”
所以...嗯...有点尴尬。但是我们并没有一个简单的“世界,你好!” 挑战(尽管有35个标记为hello-world的变体,并且还在计数)。尽管这不是通用语言中最有趣的代码,但是在某些esolang中找到最短的解决方案可能是一个严峻的挑战。例如,据我所知,还不知道是否找到了最短的Brainfuck解决方案。 此外,虽然所有Wikipedia(Wikipedia条目已被删除,但在archive.org上都有一个副本 ),但esolangs和Rosetta Code的列表为“ Hello,World!”。程序,这些都没有兴趣让每种语言都有最短的语言(还有GitHub存储库)。如果我们想成为代码高尔夫社区中的重要站点,我认为我们应该尝试创建最短的“ Hello,World!”最终目录。程序(类似于我们的基本quine挑战如何包含各种语言中最短的已知quines)。所以,让我们做吧! 规则 每个提交都必须是完整程序。 该程序必须不输入任何内容,并打印Hello, World!到STDOUT(此确切的字节流,包括大写和标点符号)加上可选的尾随换行符,并且不能输出其他任何内容。 该程序不得向STDERR写入任何内容。 如果有人想通过创建一种在空程序打印时使用的语言来滥用它Hello, World!,那么恭喜,他们只是为一个非常无聊的答案铺平了道路。 请注意,必须有一个解释器,以便可以测试提交。允许(甚至鼓励)自己为以前未实现的语言编写此解释器。 提交的得分上字节,在合适的(预先存在的)编码,通常(但不一定)UTF-8。某些语言(例如Folders)在评分上有些棘手-如果有疑问,请在Meta上提问。 这是不是发现了用最短的语言“你好,世界!” 程序。这是关于查找最短的“ Hello,World!”。用每种语言编程。因此,我不会将任何答案标记为“已接受”。 如果您选择的语言是已经有答案的另一种(可能更受欢迎的)语言的琐碎变体(请考虑使用BASIC或SQL方言,Unix shell或琐碎的Brainfuck派生词(例如Alphuck)),请考虑在现有答案中添加注释在其他语言中,相同或非常相似的解决方案也是最短的。 附带说明一下,请不要在没有太多兴趣的语言中用枯燥(但有效)的答案打分-这些问题对于此问题会尽可能地完善目录,因此仍然有用。然而,这样做在那里的作者确实不得不把精力投入到高尔夫球的代码语言主要是给予好评的答案。 要获取灵感,请查看Hello World Collection。 目录 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: ## Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: ## Perl, 43 + 2 (-p flag) = ...

30
Covfefify一个字符串
在此挑战中,您必须采用与正则表达式匹配的字符串^[a-zA-Z]+$或任何合理的字符串(如果需要,您不必考虑大写或小写字母)(您可以假设字符串足够长,并且对于所有字符串都具有正确的结构操作),并输出另一个字符串,该字符串与POTUS("Despite the constant negative press covfefe")在最近的dadaist推文末尾产生的单词类似。 如何对字符串进行coffefify: 首先,获得第一个声音组(组成的术语)。 你怎么做到这一点?好: 查找第一个元音(y也是元音) v creation 在那之后找到第一个辅音 v creation 删除其余的字符串 creat 那是您的第一个声音组。 下一步: 获取声音组的最后一个辅音 t 并将其替换为有声或无声版本。为此,请在此表中找到字母。用给定的字母替换(可能是相同的字母) b: p c: g d: t f: v g: k h: h j: j k: g l: l m: m n: n p: b q: q r: r ...
371 code-golf  string 

1
只匹配自己的正则表达式
正则表达式(自匹配正则表达式,正则表达式验证正则表达式)面临一些非常酷的挑战 这可能是不可能的,但是是否存在只能匹配自身的正则表达式? 注意,必须包括定界符: 例如/thing/必须匹配/thing/而不是thing。表达式唯一可能的匹配必须是表达式本身。许多语言允许使用字符串代替正则表达式。例如在Go中 package main import "fmt" import "regexp" func main() { var foo = regexp.MustCompile("bar") fmt.Println(foo.MatchString("foobar")) } 但是为了挑战,如果您想将引号作为分隔符,则让表达式被定界(开始符号,表达式,结束符号ex:/fancypantpattern/或@[^2048]@)。我认为,鉴于此问题的明显困难,它不会带来太大变化。 为了帮助您: 我为rubular.com(用于ruby regex编辑的网页)放在一起的快速技巧: var test = document.getElementById("test") ,regex = document.getElementById("regex") ,delimiter="/" ,options = document.getElementById("options") ,delay = function(){test.value = delimiter + regex.value + delimiter + options.value} ,update = function(e){ // without ...

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

7
用您的CPU绘图
我见过一篇文章,其中学生使用网络流量在该国的IPv6图上绘制了他们的大学。[图片] 您的目标很简单,但是很难实现。在CPU图上绘制文本MAIL(因为它是一维图上可以读取的少数几个单词之一)。 它看起来应该像这样: 详细说明符合条件的内容: 该代码不需要跨平台(因此您不需要未知的API来处理)。 您可以在拥有的任何常规CPU使用率实用程序中捕获它。 该图在另一台计算机上看起来更糟:这次我相信您。 基本CPU使用率百分比必须是连续的,因此,如果生成随机波并突出显示类似于MAIL的内容,那显然是作弊行为。 您可以选择要使用的最大负载,但是必须足够大才能清楚地看到它。 您必须遵循示例的线性关系。(对于M来说,它是这样的:基本百分比,然后突然增加到指定的最大值,逐渐下降到较低的百分比,再回到最大值,然后突然下降到基本百分比。) 如果这难以理解,那么选民终将注意到。 有标准漏洞。也发布图片!
289 code-golf 

30
我们对打高尔夫球并不陌生,您知道规则,我也是
编写最短的程序,打印出瑞克·阿斯特利(Rick Astley)的“ Never Gonna Give You Up”的全部歌词。 规则: 必须完全按照上面的pastebin *中的显示输出歌词。这是原始转储:http : //pastebin.com/raw/wwvdjvEj 不能依赖任何外部资源-所有歌词必须由代码生成/嵌入在代码中。 除非您在代码中包含完整的算法,否则不要使用现有的压缩算法(例如gzip / bzip2)。 使用任何语言,以最短的代码为准。 2012年6月1日更新: 对于包含非ASCII文本的解决方案,解决方案的大小将基于UTF-8编码以字节为单位。如果您使用无法在UTF-8中编码的代码点,则不会将您的解决方案视为有效。 更新,2012年6月7日: 谢谢大家的出色解决方案!明天下午我将接受最简短的回答。现在,彼得·泰勒(Peter Taylor)的GolfScript答案正在获胜,因此,如果您想击败他,就可以取得一些进步!:) * Pastebin中有一个错字(第46行,“知道”应为“已知”)。您可以决定是否复制它。

30
在Python中打高尔夫球的技巧
您使用Python打高尔夫球有哪些一般技巧?我正在寻找可以应用于代码高尔夫球问题的想法,并且这些想法至少也特定于Python(例如,“删除注释”不是答案)。 请为每个答案发布一个提示。
248 code-golf  python  tips 

30
打印程序没有的每个字符
您的任务是构建一个程序(仅使用可打印的ASCII字符和/或制表符和换行符),以完全打印出可打印的ASCII空间(0x20到0x7e)中未出现在程序源代码中的字符(以任何顺序排列)很多次)。 以任何语言执行此操作的最短代码都会胜出。

21
撤消炸弹!
您已被聘用为您的技术知识,是特工的助手,以确保好人能完成工作并拯救世界。 这是您退休前的最后一项任务,以高薪和全世界的感激之情退休。但是在您必须解除Evil Genius的Big Overly Massive BOMB的武装之前(似乎邪恶的Genius是精明的驴子,喜欢递归首字母缩写词)。无论如何,您和您的好友都在Evil Genius秘密基地的核心地带,随时准备解除可能摧毁整个大陆的BOMB的武装。在上一个任务中,您设法获得了使您感到惊讶的只是“ PASSWORD_01”的撤防代码。您将键盘连接到BOMB,但是当您准备出发时,Evil Genius的帮派们就以一连串子弹进入。不幸的是,这些项目符号之一会影响您的键盘。“完成工作,而我分散了这些麻烦!” 说你的伙伴,然后开始开枪。 眼镜 编写一个程序,以所需的任何方式输出字符串PASSWORD_01(大写)。 由于键盘已被子弹击中,因此只能使用以下键: 1 2 3 4 5 Q W E R T A S D F G < > Z X C Ctrl Shift Tab Space 使用Shift键,您的键盘允许您使用以下字符: ! " · $ % 除了键盘和屏幕(例如鼠标)之外,您没有任何其他硬件,也没有在计算机中写入密码的文件。 您没有互联网连接。 您可以假设在项目符号进入之前打开了解释程序外壳程序/源代码编辑器。可悲的是,您在敲击键盘之前还没有在其中编写任何内容。 您没有虚拟键盘。实际上,BOMB有一个TOO_FUNNY检测器,如果您尝试使用标准漏洞,它会爆炸。 由于您的伙伴正在等待您尽快完成逃离Secret Base的任务,因此您将必须编写最小的代码(因此,它是受限源代码和代码高尔夫!)。 祝您好运,因为倒计时已经开始! ...

30
给您锦上添花!
使用您的选择,打高尔夫球的语言奎因。 甲喹是一个非空的计算机程序,其不采取任何输入,并产生它自己的源代码的副本作为其唯一的输出。 不作弊-这意味着您不能只读取源文件并打印它。同样,在许多语言中,空文件也是一个提包:也不被视为合法提包。 没有错误线索-错误线索已经存在一个单独的挑战。 要点: 最小代码(以字节为单位) 最混淆/模糊的解决方案 使用深奥/晦涩的语言 成功使用难以打高尔夫的语言 以下堆栈摘录可用于快速查看每种语言的当前分数,从而了解哪些语言具有现有答案以及您要击败的目标类型: 显示代码段 var QUESTION_ID=69; var OVERRIDE_USER=98; var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";var COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk";var answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;function answersUrl(index){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+index+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER} function commentUrl(index,answers){return"https://api.stackexchange.com/2.2/answers/"+answers.join(';')+"/comments?page="+index+"&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(data){answers.push.apply(answers,data.items);answers_hash=[];answer_ids=[];data.items.forEach(function(a){a.comments=[];var id=+a.share_link.match(/\d+/);answer_ids.push(id);answers_hash[id]=a});if(!data.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(data){data.items.forEach(function(c){if(c.owner.user_id===OVERRIDE_USER) answers_hash[c.post_id].comments.push(c)});if(data.has_more)getComments();else if(more_answers)getAnswers();else process()}})} getAnswers();var SCORE_REG=(function(){var headerTag=String.raw `h\d` var score=String.raw `\-?\d+\.?\d*` var normalText=String.raw `[^\n<>]*` var strikethrough=String.raw `<s>${normalText}</s>|<strike>${normalText}</strike>|<del>${normalText}</del>` var noDigitText=String.raw `[^\n\d<>]*` var htmlTag=String.raw `<[^\n<>]+>` return ...
204 code-golf  quine 

30
没有A,只有大写锁定
如果CapsLock键盘上的键没有缺口,会发生什么? “这很高兴。” 该程序的目标是一致地模拟每次A按替换为时的键盘遗漏CapsLock。源中的大写字母“ A”应产生相同的效果。当CapsLock启用时,资本是相反的。 测试用例 "The quick brown fox jumps over the lazy dog." -> "The quick brown fox jumps over the lZY DOG." "Compilation finished successfully." -> "CompilTION FINISHED SUCCESSFULLY." "What happens when the CapsLock key on your keyboard doesn't have a notch in it?" -> "WhT Hppens when ...

30
这个数字是素数吗?
信不信由你,对于简单的素数测试,我们还没有针对高尔夫的代码挑战。尽管这可能不是最有趣的挑战,尤其是对于“常用”语言而言,但在许多语言中它可能并不平凡。 Rosetta代码按惯用方法的语言列出了用于素数测试的功能,一种方法专门使用Miller-Rabin测试,另一种方法使用试验部门。但是,“最惯用的”通常与“最短的”不重合。为了使“编程难题”和“代码高尔夫”成为代码高尔夫的首选站点,此挑战旨在汇编一种每种语言中最短方法的目录,类似于“ Hello,World!”。和高尔夫球给你一个伟大的机会!。 此外,实现素数测试的能力是我们对编程语言的定义的一部分,因此,这一挑战也将成为经过验证的编程语言的目录。 任务 编写一个完整的程序,给定严格的正整数n作为输入,该程序确定n是质数,并相应地打印真实或虚假值。 出于此挑战的目的,如果整数恰好具有两个严格的正除数,则它是质数。请注意,这不包括1,后者是其唯一的严格除数。 您的算法必须是确定性的(即以概率1产生正确的输出),并且从理论上讲应该适用于任意大的整数。实际上,您可以假设输入可以存储在您的数据类型中,只要程序可以处理1到255之间的整数即可。 输入项 如果您的语言能够从STDIN中读取,接受命令行参数或用户输入的任何其他替代形式,则可以读取整数作为其十进制表示形式,一元表示形式(使用您选择的字符),字节数组(大或小尾数)或单字节(如果这是您的语言所用的最大数据类型)。 如果(且仅)您的语言无法接受任何类型的用户输入,则可以在程序中对输入进行硬编码。 在这种情况下,硬编码整数必须易于交换。特别是,它可能仅出现在整个程序的单个位置。 出于评分目的,提交与输入1对应的程序。 输出量 输出必须写入STDOUT或最接近的替代方案。 如果可能,输出应仅包含一个真值或假值(或其字符串表示形式),并可选地跟一个换行符。 该规则的唯一例外是您的语言解释器不断输出的内容,例如问候语,ANSI颜色代码或缩进​​,这些输出不能被禁止。 附加规则 这并不是要找到用于最短时间测试的最短语言,而是要找到每种语言中最短的方法。因此,没有答案将被标记为已接受。 大多数语言的提交都将以适当的预先存在的编码(通常(但不一定)为UTF-8)以字节计分。 例如,Piet语言将在编码中得分,这是该语言的自然选择。 某些语言(例如Folders)很难评分。如有疑问,请在Meta上提问。 与我们通常的规则不同,即使使用的语言(或语言版本)比此挑战新,也可以使用。如果有人想通过创建一种在空程序执行素性测试的语言中滥用它的方法,那么祝贺您为一个非常无聊的答案铺平了道路。 请注意,必须有一个解释器,以便可以测试提交。允许(甚至鼓励)自己为以前未实现的语言编写此解释器。 如果您选择的语言是已经有答案的另一种(可能是更流行的)语言的琐碎变体(请考虑使用BASIC或SQL方言,Unix shell或琐碎的Brainfuck派生词,例如Headsecks或Unary),请考虑在现有答案中添加注释在其他语言中,相同或非常相似的解决方案也是最短的。 测试素性内置功能是允许的。这项挑战旨在将每种语言的最短解决方案归类,因此,如果使用您的语言的内置版本更短,那就去吧。 除非之前已否决它们,否则所有标准的代码高尔夫球规则都适用,包括http://meta.codegolf.stackexchange.com/q/1061。 附带说明一下,请不要在无聊的语言中打扰无聊(但有效)的答案;这些对于这个问题仍然很有用,因为它试图编译尽可能完整的目录。但是,主要是用作者实际上不得不努力打出代码的语言来提高答案的准确性。 目录 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言的最短解决方案列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: ## Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: ## Perl, 43 + ...

30
编程语言测验
祝贺丹尼斯赢得了警察和强盗的挑战!卡尔文的爱好已经兑现了他的诺言,并为丹尼斯赢得了强盗的挑战而写了这个挑战。 注意:自2015年1月1日世界标准时间以来,此挑战已关闭,以供进一步的警察答复。发布的任何新答案将不符合获胜条件,如果被破解,将不会计入强盗的分数。但是,您可能仍会发布新答案,以供其他用户使用,因此仍然有一些谜题可供将来的访问者使用。这些新答案包含在排行榜的“弱势警察”部分中,并且它们的非竞争状态被单独标记。 欢迎来到《 Hello World测验》的警察与盗贼版!(如果您从未参加过测验,请随意尝试一分钟或30分钟。不过,您不必参加此挑战。) 警察的挑战 选择一种编程语言。在发布此挑战时,有效语言必须包含英文Wikipedia文章,esolangs文章或Rosetta Code文章(请注意,链接列表不一定完整,因为它们是手动策划的)。它们还必须满足我们通常的编程语言标准,因此HQ9 +之类的产品就不存在了。最后,必须有免费的语言解释器或编译器(如啤酒)(发布此挑战时)。 编写一个Hello World程序。就是说,用所选的语言编写一个完整的程序,该程序将进行打印Hello, World!(完全一样,即此精确的字节流),并可选地在STDOUT或最接近的替代字词后加一个换行符。 您不得使用REPL环境,现有样板代码或非标准的编译器/解释器标志。该程序必须采用一个或多个源文件的形式(以排除诸如Folders之类的古怪语言),并且必须完全适合您的答案(因此其长度不能超过30,000个字符)-这对于任何认真的意见。 如果您的代码包含可打印ASCII范围之外的字节,请添加一个pastebin或十六进制转储,以确保您的代码可实际测试。 该程序必须在典型的台式PC上在1分钟内终止。 而已。要注意的是,您希望混淆代码,以至于不清楚选择哪种语言。还要注意,您不希望您的代码意外地成为任何其他语言的有效Hello World程序,尽管我希望对于经过充分混淆的程序来说这不太可能。 一旦发布,您在任何情况下都不得编辑提交的源代码(因为这可能使强盗试图破解答案的积极尝试无效)。因此,在发布之前,请确保尽可能(或不敢)打高尔夫球。如果您知道答案发布后仍然无法使用,只需删除答案并发布固定版本即可。 如果在7天内没有人发现您的代码有效的语言,则可以显示所选的语言(最好是对混淆的代码进行解释),这样可以使答案安全。请注意,在您揭示语言之前,您的提交仍然可以被破解。 最短安全提交(以字节为单位)获胜。 格式化 (如果您现在不打算作为警察参加,请跳过本节,阅读《强盗的挑战》。) 在这篇文章的底部,您将找到一个Stack Snippet,它可以生成排行榜以及可以破解的提交列表。为了使代码片段正常工作,在答案中包含特定的标头非常重要: 新答案应包含标题,例如 # ???, [N] bytes [N]代码的大小在哪里,以字节为单位,???应按字面显示。 如果答案在7天内未破解,并且您想通过显示语言来确保答案安全,则只需替换即可???,例如 # Ruby, [N] bytes 可以随意将语言名称链接到相关网站,例如esolangs页面或GitHub存储库。该链接将显示在页首横幅中。 如果其他用户成功破解了您的提交(请参见下文),请同时添加语言以及类似的通知 # Ruby, [N] bytes, cracked by [user] [user]提交第一个有效破解的用户的名称在哪里。如果破解中使用的语言与您想要的语言不同,我建议您使用强盗的猜测并在答案中提及您打算将其用作其他语言。随意使用户名成为其个人资料页面的链接。 强盗的挑战 找到一个脆弱的答案。这是一个答案,尚未破解,也不安全。 通过弄清楚它的语言来破解它。也就是说,找到给定程序是有效的Hello World程序的任何语言(以上述“警察的挑战”中概述的规则为准)。这是否是警察所要使用的语言并不重要。 如果找到了这种语言,请在注释中加上该语言的名称。如果可能,您应该包括一个在线解释器的链接,以表明该代码实际上可以按要求以该语言运行。 ...

30
我不是您要查找的语言!
当您找到一段代码并且不知道该语言是用什么语言编写时,这会很烦吗?这个挑战试图在某种程度上解决这个问题。 挑战 您将必须编写一个程序,当以两种不同的语言运行时,该程序将输出字符串: This program wasn't written in <language program compiled/interpreted in>, it was built for <other language the program can be run in>! 在输出中,语言名称应使用大写字母。例如:CJam,C ++ 这两个程序都不应该接受用户的任何输入。 当以两种语言运行时,输出应为stdout或等效输出。 在这两个程序中,stderr均不应有输出。 您可以使用两种语言的注释。 相同语言的两种不同版本计为不同语言。 如果这样做,程序应输出主要版本号,并且如果在两个不同的次要版本上运行,则还应报告次要版本。 您不应该使用预构建的版本函数(这包括在运行时已经评估过的变量)。 输出示例: Perl和Ruby: Perl: This program wasn't written in Perl, it was built for Ruby! 红宝石: This program ...

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.