Questions tagged «code-golf»

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

30
从编程难题到代码高尔夫
您的任务是编写一个输出确切字符串的程序Programming Puzzles(可选的换行新行),但是当所有空格,制表符和换行符都被删除时,它的输出Code Golf(可选的换行新行)。 您的字节数是第一个程序的计数,尚有空格。 笔记 在空间Code Golf 和 Programming Puzzles将作为去除的部分被除去,所以相应的计划。 在0x09、0x0A和0x20分别不是制表符,换行符或空格的编码中,这些字符将被删除。 如果您的代码是 42 $@ rw$ @42 然后必须输出Programming Puzzles。而且,用相同的语言 42$@rw$@42 必须输出Code Golf。 这是代码高尔夫球,因此以字节为单位的最短代码胜出!祝好运!

17
丹尼斯高尔夫温度计
丹尼斯为此社区付出了巨大的努力,包括担任主持人,语言设计师和TIO提供者。 不幸的是,他的四岁女儿得了感冒,所以让我们所有人为他提供温度计,以帮助她了解自己的康复情况(可能很快): .-----------. | | | | '-. .-' .-' - '-. |107.6- 42.0| |106.7- 41.5| |105.8- 41.0| |104.9- 40.5| |104.0- 40.0| |103.1- 39.5| |102.2- 39.0| |101.3- 38.5| |100.4- 38.0| | 99.5- 37.5| | 98.6- 37.0| | 97.7- 36.5| | 96.8- 36.0| | 95.9- 35.5| | 95.0- 35.0| '---. - …

11
错误404:找不到字符
情境 您的一位朋友正在为家庭作业而苦苦挣扎。他需要一个简单的程序来打印前404个自然数: 1 2 3 4 5 6 7 8 9 10 11 ... 401 402 403 404 您的挑战很简单:为他编写此程序。 但是,您的连接很糟糕,因此每次发送程序时都会丢失1个随机字符。为防止这种情况破坏您的程序,您必须使它删除任何单个字符都不会起作用:无论如何,程序都可以工作。(原始程序也必须工作。) 由于连接太差而无法发送大文件,因此您的代码必须尽可能短。 TL:DR-制作防辐射程序以输出数字1至404 规则/细节 输出可以是任何合理格式的整数列表(由空格,换行符,逗号等分隔)。但是,您的输出必须一致,并且在修改程序时不能更改。 禁止包含逻辑,执行实际代码,生成号码列表等的命令行标志。 这是代码高尔夫球,因此最短的提交(以字节为单位)获胜!

30
无差别编程
如果每个字符串的字符出现相同的次数并且至少出现两次,那么我们说该字符串是不歧视的。 例子 "aa!1 1 !a !1"是非歧视性的,因为每个字符 ,!,a和1出现三次。 "abbaabb"是不是 不歧视的,因为b往往会出现a。 "abc"也不会造成 歧视,因为字符不会出现至少两次。 任务 写一个非歧视性的程序或函数返回一个truthy如果给定的字符串值,非歧视的和falsy否则值。 也就是说,以自己的源代码运行的程序应返回真实值。 每个提交都必须能够处理包含可打印ASCII的非空字符串,以及出现在提交源代码中的所有字符。 测试用例 真相: <your program's source code> "aaaa" "aa!1 1 !a !1" "aabbccddeeffgg" "1Q!V_fSiA6Bri{|}tkDM]VjNJ=^_4(a&=?5oYa,1wh|R4YKU #9c!#Q T&f`:sm$@Xv-ugW<P)l}WP>F'jl3xmd'9Ie$MN;TrCBC/tZIL*G27byEn.g0kKhbR%>G-.5pHcL0)JZ`s:*[x2Sz68%v^Ho8+[e,{OAqn?3E<OFwX(;@yu]+z7/pdqUD" 虚假: "a" "abbaabb" "abc" "bQf6ScA5d:4_aJ)D]2*^Mv(E}Kb7o@]krevW?eT0FW;I|J:ix %9!3Fwm;*UZGH`8tV>gy1xX<S/OA7NtB'}c u'V$L,YlYp{#[..j&gTk8jp-6RlGUL#_<^0CCZKPQfD2%s)he-BMRu1n?qdi/!5q=wn$ora+X,POzzHNh=(4{m`39I|s[+E@&y>"

30
打印一些JSON
这个挑战很简单,但是希望有很多方法可以解决: 您需要打印/返回至少15个字符的有效JSON 对象,并且不计算不必要的空格。 您的程序应该无需任何输入即可运行。 为了清楚起见,JSON对象以花括号开头和结尾{},并且包含零个或多个以逗号分隔的key:value对。完整的JSON规范可在json.org上找到,并且代码的输出必须通过此验证器。 因此,任何几种情况会不会是有效的: 4 //Too short, not an object "really, really long string" //A string, not an object ["an","array","of","values"] //An array is not a JSON object {"this":4 } //You can't count unessential whitespace {"1":1,"2":3} //Too short {"a really long string"} //Not valid JSON, it needs a value …
74 code-golf  json 

11
九十亿个上帝的名字
上帝的90亿个名字是Arthur C. Clarke的短篇小说。这是关于一群藏族僧侣的,他们的命题是写下所有可能的神的名字,并用自己的字母写下。从本质上讲,他们致力于编写受某些规则限制的字母的所有可能排列。在故事中,修道院聘请了一些工程师编写程序来为他们完成所有工作。您的目标是编写该程序。 规则: 和尚的字母使用13个字符(根据我的估计)。您可以使用ABCDEFGHIJKLM或其他一组13个字符。 可能名称的最小长度为1个字符。最大长度为9个字符。 角色连续重复的次数不得超过3次。AAABA是有效名称,但AAAAB不是。 你的程序应该从顺序打印出来(到文件)每一个可能的名字A来MMMLMMMLM为任意字符,也有字母分开(换行符,分号,等等)。 这是代码高尔夫球,您可以使用任何语言。2014年6月1日之前最短的解决方案将获胜。 编辑:名称应以开头A和结尾MMMLMMMLM,依次遍历所有数十亿个名称。但是具体的顺序由您决定。您可以先打印所有1个字母的名称,然后打印所有2个字母的名称,等等。或者您可以打印所有以开头的名称A,然后打印以开头的所有名称B,或其他模式。但是,假设他们有时间,人应该应该能够通读文件并确认文件全部存在,并以您选择的任何逻辑顺序进行确认。

22
乌龟一直下来
编写一个程序或函数,该程序或函数需要一个正整数,并打印或返回许多ASCII艺术乌龟的堆栈,其中每只乌龟都比上面的乌龟大。 具体来说,如果输入为1,则输出应为: __ /,,\o 如果输入是2: __ o/,,\ ____ /,__,\o 如果输入是3: __ /,,\o ____ o/,__,\ ______ /,____,\o 如果输入是4: __ o/,,\ ____ /,__,\o ______ o/,____,\ ________ /,______,\o 如果输入是5: __ /,,\o ____ o/,__,\ ______ /,____,\o ________ o/,______,\ __________ /,________,\o 对于较大的输入,依此类推。 注意: o底部乌龟的头()始终在右侧。然后,上面的海龟头来回交替。 没有行可以有尾随空格。 不允许使用多余的前导空格。(即,底部乌龟的背面应在该行的开头。) 允许使用一个可选的尾随换行符。 以字节为单位的最短代码获胜。

30
斐波那契+嘶嘶声=斐波那契!
斐波那契+ FizzBu​​zz =斐波那契! 您的挑战是创建Fibo Nacci程序! Fibo Nacci程序输出前100个斐波那契数(从1开始)。 如果斐波那契数可被2 和 3整除(即它可被6整除),则输出FiboNacci而不是数字。 否则,如果斐波那契数可被2整除,则输出Fibo而不是该数。 否则,如果斐波那契数可被3整除,则输出Nacci而不是该数。 规则 该程序不应该输入。 程序应\n在每次输入后输出新行()。 该程序不应将任何内容打印到STDERR。 程序必须输出前100个 Fibo Nacci条目(从1开始)。 不允许使用标准漏洞(默认情况下)。 这是代码高尔夫球,因此以字节为单位的最短代码胜出! 这是预期的输出: 1 1 Fibo Nacci 5 Fibo 13 Nacci Fibo 55 89 FiboNacci 233 377 Fibo Nacci 1597 Fibo 4181 Nacci Fibo 17711 28657 FiboNacci 75025 121393 Fibo Nacci …

30
实施睡眠排序
睡眠排序是我在Internet上找到的整数排序算法。它将打开一个输出流,并为每个并行输入的数字延迟数秒,然后输出该数字。由于延迟,最后输出的数字最大。我估计它具有O(n + m),其中n是元素数,m是最高数。 这是Bash中的原始代码 #!/bin/bash function f() { sleep "$1" echo "$1" } while [ -n "$1" ] do f "$1" & shift done wait 这是伪代码 sleepsort(xs) output = [] fork for parallel x in xs: sleep for x seconds append x to output wait until length(output) == length(xs) return …
74 code-golf 

30
找到阶乘!
创建找到非负整数的阶乘的最短程序或函数。 用表示的阶乘!定义为 n!:={1n⋅(n−1)!n=0n>0n!:={1n=0n⋅(n−1)!n>0n!:=\begin{cases}1 & n=0\\n\cdot(n-1)!&n>0\end{cases} 用简单的英语来说,阶乘0为1,阶乘n为n,n大于0时是阶乘n小于n的阶乘。 您的代码应使用标准方法执行输入和输出。 要求: 不使用任何可以计算阶乘的内置库(包括的任何形式eval) 最多可以计算125的阶乘 可以计算数字0的阶乘(等于1) 一分钟内完成,数字最多125 提交时间最短者获胜,如果平局,则以当时票数最多的答案获胜。

13
男修道士模拟器
Ť他从圣Golfus简明的顺序弟兄背诵简短的祷告时,他们看到有人做的传统的交叉的迹象。由于最近在游客中衡量的犯罪率很高,他们在修道院里安装了闭路电视,并雇用您来帮助他们在AI时代保持古老的传统。 您的任务是分析男修道士手指跟踪软件的输出,并告诉您应进行的祈祷次数。输入是一个包含0到4之间的整数的矩阵。1,2,3,4表示手指在连续时间点的位置。0表示非手指。 唯一正确的方法TM过自己是: .1. 3.4 .2. (“。”匹配任何数字)。但是,由于摄像机旋转的不确定性以及人群中虔诚的东正教弟兄的存在(One True Way TM的横向方向相反),您也应该计算所有旋转和反射: .4. .2. .3. .1. .3. .2. .4. 1.2 4.3 2.1 4.3 1.2 3.4 2.1 .3. .1. .4. .2. .4. .1. .3. 一位数字可能是多个十字架的一部分。.pray()通过计算上面3x3子矩阵中有多少个,帮助男修道士确定其AI的次数。编写程序或函数。以任何合理方便的形式输入信息。 遗嘱案例: // in [[0,4,2,0], [1,3,2,4], [2,3,1,0]] // out 2 // in [[4,3,3,2,4,4,1,3,2,2], [0,3,0,2,1,1,2,3,2,3], [0,3,1,3,2,4,3,3,1,1], [4,3,2,3,2,4,1,4,2,3], [0,4,2,3,4,0,2,3,2,4], [2,1,0,0,2,0,0,1,2,4], [4,0,3,1,3,2,0,3,2,3], …
73 code-golf  matrix 

30
这种关系令人毛骨悚然吗?
根据该XKCD漫画,有一个公式可以确定关系中的年龄差距是否“令人毛骨悚然”。该公式定义为: (Age/2) + 7 是您可以约会的最低年龄。 因此,如果一个关系中的任何一个人都比另一个人的最小年龄年轻,那么这个关系就是令人毛骨悚然的。 考虑到两个人的年龄,您能否输出这种关系是否令人毛骨悚然? 规则 您的程序应使用两个整数作为输入,关系中两个人的年龄。这些可以采用任何合理的格式。 然后,您的程序必须输出一个真实或虚假的值,描述该关系是否为“令人毛骨悚然的”(Truthy = Creepy)。 不允许出现标准漏洞。 这个难题是Code Golf,因此以最短的源代码(以字节为单位)的答案会胜出 测试用例 40, 40 - Not Creepy 18, 21 - Not Creepy 80, 32 - Creepy 15, 50 - Creepy 47, 10000 - Creepy 37, 38 - Not Creepy 22, 18 - Not Creepy

30
从较小的“ H”创建一个“ H”
挑战 创建一个函数或程序,当给定整数时size,该函数或程序将执行以下操作: 如果size等于1,则输出 H H HHH H H 如果size大于1,则输出 X X XXX X X X程序/功能的输出在哪里size - 1 (只要您愿意,0只要您在答案中指定,就可以使基本情况与相对应) 可以使用以下任何一种输出格式,以您更方便的方式: 所需结构的字符串,其中任意两个不同的字符分别对应于H和space 具有所需结构的二维数组,其中任意两个不同的值分别对应于H和space 字符串的数组/列表,每个字符串中有一行输出,并且与H和对应的任意两个不同的值space 只要每行上有恒定数量的前导空格,就可以使用前导空格。两个不同的输出字符可以取决于您选择的任何内容,只要它们不同即可。 指定代码返回的输出格式。 测试用例 1 H H HHH H H 2 H H H H HHH HHH H H H H H HH HH H HHHHHHHHH H HH HH …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

30
给我盖一堵砖墙!
挑战 我需要帮助来建造一堵砖墙!在没有输入的情况下为我提供一些代码,并产生以下输出墙: _|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___| ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__ _|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___| ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__ _|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___| ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__ _|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___| ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__ _|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___| ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__ 现在,这堵墙正好是10字符高而70字符宽。 如上所述,没有输入,只有代码。最少的字节数,我们必须有效地构建此砖墙。显然,此程序必须具有构建墙的功能。否则它显然不会自行构建!祝好运! 优胜者 获胜者使用该语言前往MarinusAPL,需要一整个12字节! https://codegolf.stackexchange.com/a/99028/61857 谢谢大家的参与!

30
堆栈交换投票模拟器
写一个程序或函数,它仅包含字符的字符串^和v(你可以假设不会有其他字符)。从左至右读取此字符串表示单个用户在首次查看Stack Exchange问题或答案时进行的鼠标单击顺序。 每个^代表单击“ upvote”按钮,每个v代表单击“ downvote”按钮。(有关工作示例,请向左稍看。) 假设没有投票限制有效,因此所有点击均已正确注册。 打印或退回: 1或者+1该帖子最终被否决。 0如果帖子最终没有被投票。(-0并且+0无效) -1 如果帖子最终被否决。 帖子以用户的零净票数开头,按钮如下更改净票数: Net Votes Before Button Pressed Net Votes After 1 ^ 0 1 v -1 0 ^ 1 0 v -1 -1 ^ 1 -1 v 0 以字节为单位的最短代码获胜。 测试用例: [empty string] -> 0 ^^ -> 0 ^v -> -1 …

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.