Questions tagged «code-golf»

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

6
序列太元
我们从一个空白的1索引序列开始: _,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,... 在第n 个步骤中,我们填写每次(n)的与大于1的整数起始于第一剩余空白,其中a(n)是第n坯料个序列中的条目。 第一步之后: 2,_,3,_,4,_,5,_,6,_,7,_,8,_,9,_,10,_,11,_,12,_,13,_,... 请注意,a(1)必须为2,因为大于1的第一个整数为2。 在第二步中,我们填写每个a(2)空白。显然,a(2)必须为2。 2,2,3,_,4,3,5,_,6,4,7,_,8,5,9,_,10,6,11,_,12,7,13,_,... 在第三步中,我们填写每个a(3)空白。从序列中,a(3)= 3。 2,2,3,2,4,3,5,_,6,4,7,_,8,5,9,3,10,6,11,_,12,7,13,_,... 在第四步中,我们填写每个a(4)空白。从序列中,a(4)= 2。 2,2,3,2,4,3,5,2,6,4,7,_,8,5,9,3,10,6,11,3,12,7,13,_,... 最终: 2,2,3,2,4,3,5,2,6,4,7,2,8,5,9,3,10,6,11,3,12,7,13,2,... 任务 给定n,返回序列的第 n 个元素。 该序列的前10,000,000个术语可以在此处找到。 这是代码高尔夫球。以字节为单位的最短答案将获胜。有标准漏洞。

30
它是Lynch-Bell号码吗?
您将得到一个正整数(永远不会包含0)作为输入。您的任务是检查它是否是Lynch-Bell号码。 如果数字的所有数字都是唯一的并且该数字可被其每个数字整除,则该数字为Lynch-Bell数字。 实际上,实际上只有548个Lynch-Bell数字,因此可以进行硬编码,但几乎可以肯定会更长。 126是Lynch-Bell号码,因为其所有数字都是唯一的,并且126可被1、2和6整除。 您可以输出任何真实值和虚假值。 例子: 7 -> truthy 126 -> truthy 54 -> falsy 55 -> falsy 3915 -> truthy 这是OEIS A115569。

8
为我的孩子搭建楼梯
前几天,我儿子让我用乐高积木为他建造一个楼梯。我想到了这样的事情: 然后我的孩子问我一个程序,该程序使用最少的字节数在计算机屏幕上生成了类似的阶梯。我不太擅长于代码高尔夫,所以我需要您的帮助。我需要一个程序: 接收带有楼梯所需的级别数的正整数。 输出带有您在图像中看到的图案的楼梯图。 输出将为文本格式,但可以将积木区分开。例如,您可以将'█'字符用作半个字块,并以所需的任何颜色对其进行绘制,或者仅选择您选择的任何字符。 限制条件: 块需要具有三种不同的颜色,并且将使用尽可能长的颜色(如果输入为1或2,则没有足够的块来使用所有三种颜色)。如果需要,可以使用'░▒░'字符,例如,也可以选择三个不同的字符。 同一行中不能有两个相同颜色或图案的块并排放置。 只要画上楼梯,我儿子就不会真正在意尾随空间或换行。 示例(对字符的错误选择表示抱歉): Input: 1 Output: ██ Input: 2 Output: ██ ▓▓ Input: 3 Output: ██ ▓▓ ██░░ Input: 5 Output: ██ ██ ██░░ ██░░ ██░░▓▓

30
三角依赖
甲三角号是一个数字,是的总和n自然数从1到n。例如1 + 2 + 3 + 4 = 10,10三角数也是如此。 给定正整数(0 < n <= 10000)作为输入(可以作为整数或字符串),返回可以添加到输入中以创建另一个三角数的最小可能三角数。 例如,给定input 26,将10结果相加36,这也是一个三角数。没有比10可以添加来26创建另一个三角数更小的三角数,因此10在这种情况下正确的结果是。 0 是一个三角数,因此,如果输入本身是一个三角数,则输出应为 0 测试用例 案例以以下格式给出 input -> output (resulting triangular number) 0 -> 0 (0) 4 -> 6 (10) 5 -> 1 (6) 7 -> 3 (10) 8 -> 28 (36) 10 -> 0 …

26
我是卡伦号码吗?
库伦数是使用以下公式生成的序列中包含的任何数字: C(n)=(n * 2 ^ n)+1。 你的任务: 编写一个程序或函数,该程序或函数接收输入,并根据输入是否为库伦编号来输出真/假值。 输入: 0到10 ^ 9(含)之间的非负整数。 输出: 真/假值,指示输入是否为库伦编号。 测试用例: Input: Output: 1 ---> truthy 3 ---> truthy 5 ---> falsy 9 ---> truthy 12 ---> falsy 25 ---> truthy 得分: 这是代码高尔夫球,因此以字节为单位的最低分数获胜。

12
为俄语写一个复数函数
在英语中,名词可以采用两种不同的形式,具体取决于它们是单数(一个)还是复数(其他)。例如,我们说“ 1条狗”,但说“ 2条狗”,“ 0条狗”,“ 57条狗”等等。 在俄语中,分为三类。代替俄语中的“ 1条狗,2条狗,5条狗”,它是“ 1собака,2собаки,5собак”。 类别根据以下逻辑进行划分: “单数”:用于1和以1结尾的任何数字,但以11结尾的数字除外。 示例:1собака,21собака,101собака “很少”:用于2、3和4,以及以2、3或4结尾的任何数字,但以12、13和14结尾的数字除外。 例如:2собаки,3собаки,4собаки,32собаки,43собаки,104собаки “许多”:任何不视为“奇异”或“很少”的东西。 例如:0собак,5собак,11собак,13собак,25собак,111собак,114собак 挑战 给定范围为[0,1000]的整数输入,1如果它属于“单数”类别,2如果它属于“很少”类别,并且5如果它属于“许多”类别,则返回。 您的程序可能是一个函数,也可以使用STDIN。您可以打印到STDOUT或从函数返回值 这是一个代码高尔夫挑战,因此以最少的字节数赢得解决方案。

10
帮我打我的号码!
在编写代码高尔夫球程序时,我通常最终会使用一些数字常量。我总是将它们放在十进制中,因为这就是我的想法,但是我只是意识到我的语言支持其他数字格式,这可能会使我略微缩短代码。 挑战 给定一个小于2 ^ 53-1的非负整数,请确定该整数是否具有以下最短表示形式: 小数 十六进制 科学计数法 小数 由于这是我的语言的默认格式,因此该格式无需额外的注释。每个数字都照常表示为十进制。 十六进制 我的语言将0x前缀用于十六进制常量。这意味着,如果一个数字有4个十六进制数字,则将需要6个字节来表示该数字。 科学计数法 我的语言使用以下格式表示科学符号: [Real base] e [10的整数指数] 例如,700将被表示为7e3,并且699将被表示为6.99e3,因为基数必须在-10到10之间(不包括在内)。出于此挑战的目的,因为输入的数字为非负数,所以基数始终将始终至少为0。 输出量 您应该返回一种识别最短格式的方法(即,十进制为0,十六进制为1,科学格式为2)。或者,您可以输出数字本身的最小表示形式。 测试用例 Decimal | Hexadecimal | Scientific | Winner --------------|--------------|-------------------|------------- 0 | 0x0 | 0e0 | Decimal 15 | 0xF | 1.5e1 | Decimal 6999 | 0x1B57 | 6.999e3 | …

3
Buzzby Berkeley机器人Hokey Pokey
Buzzby Berkeley机器人Hokey Pokey 任务 写一个程序或函数来产生ASCII艺术动画,描绘出一系列机器人以Busby Berkeley编号的风格随着Hokey Pokey(或Cokey,如果您愿意的话)的歌词跳舞! 示例输出 输入项 接受三个参数(假设是有效的): N =生产线上的机器人数量(最小值= 6) B =一次“拍子”的持续时间(以毫秒为单位)(最小值= 10) D =连续机器人之间的毫秒延迟(最小值= 0) (在上面的示例输出中:N = 8,B = 380,C = 75) 技术指标 舞台上连续显示N个机器人。 舞台下方一次显示“诗句”中的一行文本(居中到1个字符内,并用引号引起来)。 机器人对每行进行操作,直到每行重复5次为止。 通过使用一组ASCII字符描绘机器人并执行指定的持续时间,然后执行下一个动作,来执行动作。动作的持续时间以“节拍”为单位。1所拍的持续时间是一毫秒数,乙。 当第一个机器人显示一行经文时,它会立即开始对每一行经文执行动作。 随后的每个机器人都将其动作延迟到在其右侧(您的左侧!)机器人开始其动作之后的特定时间(D)为止。 机器人的描述因ASCII字符而异,ASCII字符代表机器人的“天线”,其中有5种可能的类型,每次运行程序时都会随机分布。 每种类型的天线必须至少由一个机械手使用,但是在少于3个其他机械手分开的任何机械手上都不得出现相同类型的天线。任意两种天线的数量相差不得超过1(例如1xType_4和3xType_5是非法的,因为3-1> 1) 诗句与动作 整节经文重复5次,一次重复1行... Line Text Action/Beats, ---- ----------------------------- ------------------------------------ 1 You put your ? in …

7
解码虚空
无效列表是一个不包含任何非列表对象的列表。或者,如果您喜欢递归定义 空清单无效 仅包含其他无效列表的列表是无效的 所有无效列表的深度都是有限的。 以下是空白列表的一些示例(使用python语法): [] [[]] [[],[]] [[[]]] [[[]],[]] [[],[[]]] 以下是一些不是无效列表的示例: ["a"] [[...]] [1] 2 [[],([],[])] 任务 编写两个单独的函数(或根据需要编写程序)。一个应采用一个正整数(如果需要,还可以包括零)作为参数并返回一个无效列表,另一个应采用一个无效列表并将其返回一个整数。这两个函数应始终彼此相反。也就是说,如果你传递的输出f到g你应该得到的原始输入f的结果g。这意味着映射必须为1:1,即,对于每个整数,可能仅存在一个为其g提供该整数的空列表,而对于每个空隙列表,应仅存在一个为其提供该空列表的整数f。 您实质上是在创建双射 您可以选择使用无效列表的字符串表示形式(带或不带逗号和空格),而不是语言的本机列表类型。 计分 您的分数将是两个职能的总和。这是代码高尔夫球,因此您应力争将这一总和最小化。
25 code-golf 

30
数模列表及其在列表中的索引
一个简单的例子:将 一个正整数列表作为输入,并在列表中输出其从1开始的索引的模数。 如果输入整数是{a, b, c, d, e, f, g}则输出应该是{a%1, b%2, c%3, d%4, e%5, f%6, g%7}其中%是模运算符。 测试用例: 10 9 8 7 6 5 4 3 2 1 0 1 2 3 1 5 4 3 2 1 8 18 6 11 14 3 15 10 6 19 12 3 7 5 …
25 code-golf  math  number 

11
他没有来-挑战挑战
编写一个给定字符串的程序或函数,如果有的话,它将zalgo剥离。 扎尔戈 对于本文,zalgo被定义为以下Unicode范围内的任何字符: 组合变音标记(0300–036F) 合并变音符号扩展(1AB0–1AFF) 组合变音符号补充(1DC0–1DFF) 组合符号的变音符号(20D0–20FF) 合并半角线(FE20–FE2F) https://zh.wikipedia.org/wiki/Combining_character#Unicode_ranges 输入项 可以通过命令行参数,STDIN或您的语言支持的任何其他标准输入法来传递 将是可能包含zalgo或其他非ASCII字符的字符串 输出量 输出应为不包含任何zalgo的字符串。 测试用例 Input -> Output HE̸͚ͦ ̓C͉Õ̗͕M͙͌͆E̋̃ͥT̠͕͌H̤̯͛ -> HE COMETH C͉̊od̓e͔͝ ̆G̀̑ͧo͜l͔̯͊f͉͍ -> Code Golf aaaͧͩa͕̰ȃ̘͕aa̚͢͝aa͗̿͢ -> aaaaaaaaa ññ -> ñn ⚡⃤ -> ⚡ 计分 因为这是代码高尔夫,所以以字节为单位的最短答案会获胜。

9
数字储物柜!
给定正整数<100(从1到99,包括1和99),输出那么多的储物柜。 储物柜的定义如下: +----+ | | | | | | | nn | +----+ 其中nn的储物柜号码以10为底。如果有1位数字,则其前面用0表示。例如,2号储物柜显示数字02。 储物柜可以堆放,但最多只能堆放2个: +----+ | | | | | | | on | +----+ | | | | | | | en | +----+ on表示奇数,en偶数。储物柜也可以彼此相邻放置。 +----+----+ | | | | | | | | | | 01 | …

11
完美回文
您的任务是确定一个字符串有多少完美的回文。您的典型回文(例如12321)是一个完美的回文。完美是1。 要确定字符串的完美性,您可以看到可以将其分成多少部分,每个部分都是回文。如果存在歧义,例如with aaaa,可以将其拆分为[aa, aa]or [aaaa]或[a, aaa]or [aaa, a],则最短集合将被覆盖,aaaa得分为1,这是最短集合的长度。 因此,您必须编写一个程序或函数,该程序或函数将接受一个非空输入并输出其完美程度(这是可将其拆分为集合中每个元素为回文的最短集合的长度)。 例子: 1111 -> 1 [1111] abcb -> 2 [a, bcb] abcbd -> 3 [a, bcb, d] abcde -> 5 [a, b, c, d, e] 66a -> 2 [66, a] abcba-> 1 [abcba] x -> 1 [x] ababacab -> 2 [aba, bacab] …

30
高尔夫自定义斐波那契数列
的斐波那契序列是一个相当众所周知的事情在这里。哎呀,它甚至有自己的标签。但是,尽管如此,我们肯定会坚持我们的根源1, 1, ...(或者是它0, 1, ...?我们可能永远不会知道...)。在此挑战中,规则是相同的,但是您无需获得n斐波那契序列中的第一个项目,而是获得n以Fibonacci式序列中的第一个项目x, y, ...。 输入项 三个整数,按您想要的任何顺序。n是输出序列中术语的索引(0或1索引)。x而y在当前的程序运行的斐波那契序列中的前两个项目。 输出量 n斐波那契数列中的第个词,以x,开头y。 测试用例 (0索引) n x y out 5 0 0 0 6 0 1 8 6 1 1 13 2 5 5 10 10 2 2 178 3 3 10 23 13 2308 4261 1325165 0 0 1 0 1 …

12
回文残留
我写这篇文章的今天是3月31日。在美国,这是3/31。我正在331和一个数字玩耍以提出挑战,结果发现它的残基(模数小)是回文的。331%2=1, 331%3=1, 331%4=3, 331%5=1, 331%6=1(11311)。 您面临的挑战是,给定一个整数时n > 2,输出n取模余数时具有回文残差的第一个正数[2,n]。 例如,对于输入7,输出应为1, 42, 43, 140, 182, 420, 421。这是解释这种情况的图表: mod num | 2 3 4 5 6 7 ----------------- 1 | 1 1 1 1 1 1 42 | 0 0 2 2 0 0 43 | 1 1 3 3 1 1 140 …

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.