Questions tagged «code-golf»

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

11
制作数字列表转换器
当您想将一个数字列表(向量,数组...)从一个程序复制粘贴到另一个程序时,您是否讨厌它,但是您使用数字的格式与您所需要的格式不匹配? 例如,在MATLAB中,您可能会有一个用空格分隔的列表,如下所示: [1 2 3 4 5] (you can also have it comma separated, but that's not the point) 在Python中,您需要插入逗号以使该列表成为有效输入,因此您必须将其转换为 [1, 2, 3, 4, 5] 使它工作。在C ++中,您可能需要类似以下内容: {16,2,77,29} 等等。 为了简化每个人的生活,让我们创建一个列表转换器,该转换器接受任何格式的列表*,然后输出另一种指定格式的列表。 有效括号为: [list] {list} (list) <list> list (no surrounding brackets) 有效的分隔符为: a,b,c a;b;c a b c a, b, c <-- Several …

10
支架平衡
您将得到一个(可能为空)字符串,其中包含方括号([{()}])和其他任何字符(A- Z,a- z,0- 9,标点符号)。您需要检查其是否遵循以下规则: 非方括号字符将被忽略。 每个开放式括号[{(都有一个封闭式括号)}]。所以[](是不允许的。 支架正确嵌套。[(])不允许。 弯括号中不能包含方括号。简单括号内不能包含大括号或方括号。因此[({})],[{[]}]并且({})是不允许的。括号可以与类似的括号嵌套,因此[[{((()))}{{(())}}]()]{()}是允许的。 根据您的选择,输出是单个真实/错误值。 最短的代码胜出。 测试用例 b[[a{(/)}(())+={{}-}],] ->有效 ([h][e][l][l][o]) ->无效 [///[{(\/(arg()))}1{{((-)-2)}}]()]{()} ->有效 hi ->有效

1
低分辨率像素艺术的死亡(或画出死亡)
这是不规则的网络漫画!主题任务。* 死亡是一个相当广泛的组织,尽管Head Death毫不费力地将其员工区分开来,但与该组织相关的某些其他实体却难以追踪所有人。 因此,在给定各种死亡之一的标题的情况下,您的任务是生成该死亡的相应32x32像素图像。 此外,由于“头颅死亡”相当官僚主义(有点小气),因此最短的程序(在考虑了一些奖金之后)将成为正式使用的程序。 输入必须不区分大小写。此外,前缀Death Of,Death By和The Death Of应该被视为等效。 输出图像可以保存到文件(任何无损位图图像格式)或显示在屏幕上。 以下是要使用的精确 RGB值: White 255 255 255 Black 0 0 0 Dark Gray 125 125 125 Bone Gray 170 170 170 Purple 60 0 140 Brown 120 40 0 Blue 0 80 200 Green 0 100 0 Neon Green 100 …

2
90°自转程序
介绍 编写一个完整的程序,该程序将ASCII字符的矩形块顺时针旋转90度。当程序本身顺时针旋转90度时,它将ASCII字符块逆时针旋转90。 规则 许多人不使用旋转或转置矩阵的内置函数。例如,在MATLAB / Octave中rot90,'不允许使用转置运算符。 您必须编写一个使用STDIN和STDOUT或最接近的等效语言的完整程序。 您的程序必须为矩形,并假定输入也是矩形。 输入和输出是用换行符分隔的字符串,并且没有尾随的换行符。 当将其源代码作为输入运行时,您的程序必须将自身顺时针旋转90度。输出必须是使用相同语言的第二个程序,该程序将其输入逆时针旋转90度。当旋转的程序被提供其源代码作为输入时,它应输出原始程序的源代码。 注意:这两个程序都必须能用于任何输入,而不仅仅是它们自己的源代码,因此不允许一个字符的quine。 例 说下面是一个有效的程序,它以一种假设的语言ExampleLang将输入旋转90度。 ^f a2% 3 lk (^_^& v D8 $4 / 当以自身作为输入运行时,它将输出另一个有效程序,该程序将其输入逆时针旋转: D l^ 8 kf $ (a 4 ^2 _% ^ /v&3 当第二个程序作为输入提供给自己时,输出原始程序。请注意,空白行应有四个空格,倒数第二行上有一个尾随空格,不能在markdown中呈现。澄清: $ examplelang program < program > rotProg $ examplelang rotProg < rotProg > program1 $ …

9
斐波那契日快乐!
背景 今天(或昨天)是(或曾经是)11/23或斐波那契日!有什么比做斐波那契蛋糕更好的庆祝方式了? 例子 3 ii i_i_ii_i_i 8 ii ii ii ii ii ii ii ii i ii i i ii i i ii i i ii i i ii i i i ii i i i i ii i i i i ii i i i i i ii i …

6
字符串到ASCII艺术文本
任务 您将编写一些从此网站上看到的ASCII Art Text 来生成ASCII art! 规则 输入将仅是字母文本和空格,并将输入为一行。它也不区分大小写。 如果输出文本长于终端宽度,则无需修复。只要终端窗口可以无限拉伸是正确的,您就可以了。 除标准漏洞外,唯一的其他规则是您不得使用内置插件-尽管如果您的语言具有内置插件(这将是惊人的),但如果您将其作为旁注包括在内答案,从采用代码解决方案的解决方案中获得15%的奖励! 例: 输入: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 输出: _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _______ _____ _______ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ …

17
查找所有可能的基本表示形式的总和
这项挑战的目的是编写一个程序,以转换输入字符串(假定该字符串仅包含字母和数字),并尽可能多地使用2到36之间的基数,并找到结果的基数10。 输入字符串将被转换为所有在其数量会根据用于碱基高达36标准字母表来定义的碱基:0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ。例如,输入2T仅在以30为基数的有效值。该程序会将2T从30到36的基数转换为十进制并求和。 您可以假定输入字符串仅包含字母和数字。您的程序可以使用大写或小写;它可以但不需要同时支持两者。 测试用例 输入样例: 2T 可能基准图 Base Value 30 89 31 91 32 93 33 95 34 97 35 99 36 101 输出:665 输入样例: 1012 可能基准的图表: Base Value 3 32 4 70 5 132 6 224 7 352 8 522 9 740 10 1012 11 1344 12 1742 13 …

5
密码锁柜台
场景是: 当Brian突然需要他的吸入器时,Peter和他的伙伴Brian在健身房。Brian倒在地板上之前设法告诉Peter密码到他的密码锁。 当彼得到达Brian的储物柜并看到指示器所指的那一刻,Stewie伏击了他,并在他的脸上喷了满罐胡椒粉,使Peter蒙蔽了双眼。 彼得现在必须尝试打开锁而不要看它。他开始将表盘向右旋转,并在传递数字时对数字进行计数。然后,他以正确的数字开始将表盘向左旋转,仍在计数,最后将其向右旋转直到锁打开。 挑战: 编写一个函数/程序,它接受两个输入,即来自Brian的组合和指示器位置。输出彼得必须数的数字。 规则: 组合和指标位置必须是单独的参数。 输入可以来自命令提示符,也可以作为函数参数。 输出必须打印到屏幕上/否则显示(不记录到文件中) 假定起始位置与第一个数字不同,并且组合中的所有三个数字都是唯一的 下图所示为锁,可能的数字为0-39。 说明: 要打开下面的锁,您需要按照以下说明进行操作: 您必须知道您的代码。假设现在是(38,16,22)。 将拨盘向右旋转3次(通过起始数字3次),然后在第一个数字(38)与指示器对准时停止 将拨盘向左旋转1圈,传递第一个数字,并在第二个数字(16)与指示器对齐时停止。 将拨盘向右旋转,并在第三个数字(22)与指示器对准时停止 拉下锁 例: Input 38 16 22 33 Output 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 …
20 code-golf  number 

2
晶体管组合
电子游戏晶体管具有非常有趣的能力系统。您收集了16个“功能”,可以在16个不同的插槽中使用。有趣的是,有3种插槽类型,每个函数根据您在哪个插槽中使用其行为有所不同: 有4个被动插槽。 有4个活动插槽。 每个活动插槽都有2个升级插槽。 我们想弄清楚给我们带来了多少种不同的技能。 但是,某些组合是等效的。特别是,在这些插槽组的每一个中,功能的特定位置无关紧要。另一方面,升级插槽中功能的效果确实取决于父级活动插槽中使用的特定功能。 因此,使用十六进制数字表示功能,以下组合都是等效的: Passive Slots: 0 1 2 3 Active Slots: 4 5 6 7 Upgrade Slots: 8 9 A B C D E F Passive Slots: 2 0 1 3 # Permutation of passive slots. Active Slots: 4 5 6 7 Upgrade Slots: 8 9 …

13
请没有人!
我绝对讨厌数字1。因此,我需要您的帮助才能将数字转换为它们的“适当形式”。 正确形式的数字永远不会1连续包含两个。101可以,但是110很丑。 要进行转换,只需跳过所有不正确的数字并正常计数。例如... 1 -> 1 2 -> 2 ... 10 -> 10 11 -> 12 12 -> 13 ... 108 -> 109 109 -> 120 110 -> 121 111 -> 122 等等。 您的程序应采用整数并以适当的形式输出。这是代码高尔夫球,因此以字节为单位的最短代码获胜。
20 code-golf  number 

1
telgif:反figlet
figlet是一种实用程序,可将纯文本转换为可在横幅等中使用的ascii-art表示形式。例如: $ figlet "CODE GOLF" ____ ___ ____ _____ ____ ___ _ _____ / ___/ _ \| _ \| ____| / ___|/ _ \| | | ___| | | | | | | | | | _| | | _| | | | | | |_ | |__| |_| | …

1
生成图片迷宫
挑战 编写接受“图像”并输出由该图像形成的图片迷宫的程序/功能。 输入值 您的程序应接受两个参数: 我,形成迷宫的形象 S,一个布尔值,指定是否显示迷宫的解 我的格式如下: ....... .#####. .#####. ####### .#####. .#####. ....... 其中#的是要包含在解决方案路径.中的单元格,而的是要排除的单元格。您可以用任意选择的字符替换.,,#和换行符,只要它们彼此不同即可。或者,您可以接受输入图像的实际位图。 输出量 产生的迷宫应采用以下形式: ############### # # # ### ####### # # #.........# # # #.#######.# # # #.#.......# # ###.#.######### ....#.#........ #####.#.####### # ...#..... # # #.#######.# # # #.........# # # ####### ### # # …

17
简化二进制
挑战 给定通过任何方式输入的二进制数字,请使用完整程序或函数“简化”该数字。 输入值 [binary] binary 是二进制数大于0的数字。 输出量 接受输入,不使用内置函数将其转换为以10为底,然后,如果该数字仅包含1和0,则将其转换为以10为底的数字,就好像它是另一个二进制数一样。重复该过程,直到无法以二进制形式读取该数字并输出该数字。 其他资讯 如果输入为1,则只需输出1。您的程序不应继续无限简化1。 这是代码高尔夫,因此以星期二(11月17日)为单位的最短答案为胜。 如果有什么令人困惑的地方,请留下评论,指出我需要清除的内容,然后我将进行相应的编辑。 不允许用于基本转换的内建函数。 例子 Input | Output 1 | 1 1010 | 2 1011 | 3 1100100 | 4 1100101 | 5 1111110011 | 3

8
你好吗?
马丁创建了一个不错的代码段,可用来跟踪得分以解决挑战。太好了,但如果您自己跟踪它,会不会更好? 创建一个程序,将自身的字节数与该问题的其余答案进行比较,并返回“我是答案编号n”。 规则: 您自己答案中的字节数可以在代码中进行硬编码 该函数可以将url作为输入,也可以进行硬编码。网址的字符数不会计入字节数,因此无需使用网址缩短器。 答案的网址不能硬编码 答案的分数可以从标题中找到(与Martin的摘要相同)。 答案标题必须具有正确的格式(如下所述)。 如果可以在线运行该程序,请共享一个在线编译器的链接(或可以从答案中执行的代码段)。如果不可能,请显示如何调用该函数,并显示您自己的编译器的输出(在发布答案时。您当然不需要更新它)。 您必须将答案与该问题的其他答案进行实际比较。仅以I'm answer number 1.某种语言编写脚本是不合法的。 如果其他答案的字节数与您自己的相同,则可以选择是最好还是最差。 标头必须格式化: # Language Name, N bytes 无法使用删除线等,因此,如果更改了代码大小,请在标题下方以粗体显示该代码,或以其他方式进行指示。 输出必须为I'm answer number n.,其中数字n为位置(尾随换行符/空格可以)。因此,最短的答案将输出:“我是1号答案”,第二个是“我是2号答案”。等等 这是代码高尔夫,所以最短的答案(以字节为单位)将获胜。

12
多项式的符号微分
象征性的区别1:去了Coefishin' 任务 编写一个程序,将x的多项式从stdin(1 <deg(p)<128)引入并进行微分。输入多项式将是以下形式的字符串: "a + bx + cx^2 + dx^3 +" ... 其中每个项的系数是整数(-128 <a <128)。每个术语由一个空格,一个+和另一个空格分隔;线性和常数项如上所示(即no x^0或x^1)。项将按照递增的顺序出现,并且那些零系数的幂被省略。所有系数为1或-1的项都会明确显示该系数。 您的输出必须具有完全相同的形式。请注意,输出中的系数可能高达127 * 127 == 16129。 例子 "3 + 1x + 2x^2" ==> "1 + 4x" "1 + 2x + -3x^2 + 17x^17 + -1x^107" ==> "2 + -6x + 289x^16 + -107x^106" "17x …

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.