Questions tagged «code-golf»

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

15
功能剪贴板:粘贴
作为2018年5月每月语言活动的一部分,此挑战与MATL语言的某些功能有关。 相关挑战: 功能剪贴板:复制。 介绍 MATL的功能剪贴板将输入(存储到“副本”)存储到最近四个对常规输入函数的调用中。普通函数是MATL中最常见的函数类型。输入接受是指该功能至少接受一个输入。可以将存储的剪贴板内容推入堆栈(“粘贴”)。 此挑战将剪贴板内容作为输入。将假定所有产生剪贴板状态的函数都将一个或多个正整数作为输入。因此剪贴板状态可以用数字列表来表示。(有关如何实际填充剪贴板的更多信息,请参见相关挑战;但这对于当前挑战不是必需的)。 解释剪贴板内容 例子1 第一个内部列表引用最近的函数调用,依此类推,因此剪贴板状态 [[11, 28], [12, 16], [4], [5, 6]] 表示最后的函数调用了两个输入,即11,28; 倒数第二个电话花了投入12,16; 等等(此剪贴板状态由相关挑战的第一个示例中的代码产生)。 例子2 如果没有足够的函数调用,剪贴板中的某些尾部内部列表将为空: [[7, 5], [], [], []] (这是由一个简单地添加7和的程序产生的5)。 例子3 函数调用可以具有任意数量的input,但至少可以是所有输入1(不接受任何输入的函数不会更改剪贴板状态)。因此,以下也是可能的。 [[3], [2, 40, 34], [7, 8, 15], []] 访问剪贴板内容 使用MATL的功能M(顺便说一句,它不是普通功能,而是剪贴板功能)将功能剪贴板的内容压入堆栈。此函数将一个正整数作为输入,并将某些剪贴板内容压入堆栈,如下所示。参考示例1中的剪贴板状态: [[11, 28], [12, 16], [4], [5, 6]] 1M将所有输入返回到最近的函数调用。因此,对于所讨论的例子,它给11,28。 同样,2M,3M和4M所有输入返回到第二,第三和第四最近的函数调用。所以2M给人12,16; 3M给4; 并4M给出了5,6。 …

20
艾菲尔铁塔:从“ A”中创建一个大的“ A”
创建该给多条线路的功能n,使一个bigA。 的水平条bigA必须在中间行,如果n是偶数,则水平条必须在中间的下一行 假设要输出等宽字体 输出应该是一个字符串(或类似的字符数组,例如),具有清晰的换行符以分隔行,并为左填充使用正确的空格(您可以假定\ t为4个空格)。右边可以有任何空格。 例子 n = 1 A n = 2 A AAA n = 3 A AAA A A n = 4 A A A AAAAA A A n = 5 A A A AAAAA A A A A 这是受较小的“ H”创建“ H”的启发

1
重建我的娃娃娃
背景 一个俄罗斯套娃(或俄语嵌套娃娃)是一组相互匹配的内部娃娃。我不小心弄混了我的俄罗斯套娃娃娃的收藏,我不记得里面有哪个。 目的 给定唯一字符串的列表,将它们分类到嵌套的俄罗斯套娃中。每个字符串是一个单独的玩偶,而俄罗斯套娃则是一个字符串列表。 规则 设min(a,b)字符串a和的字典最小化b。让其a ⊂ b表示a为的子字符串b。然后, 娃的清单必须按字典顺序排序 字符串a可以适合字符串,b如果a ⊂ b 如果a ⊂ b和a ⊂ c,a则将进入内部min(b,c) 如果a ⊂ c和b ⊂ c,但a ⊄ b b ⊄ a,则只有min(a,b)会进入c 如果既a ⊂ c和b ⊂ c,且也a ⊂ b,则只会b进入内部c。即,超级字符串先于子字符串,这样娃就不会过早终止。 例子 In: hahaha, hah, lol, lololol, bahaha, bah, haha, ah Out: bahaha, bah, ah hahaha, haha, …
20 code-golf  string 

9
在保留形状的同时反转列
介绍 假设您有一个整数列表的列表(或者实际上是任何对象,但是为了简单起见,我们坚持使用整数)。列表的长度可能不同,其中一些可能为空。让我们以表格格式编写列表: [[ 1, 2, 3, 4, 5], [ 6, 7], [ 8, 9, 10, 11], [], [12, 13, 14], [15, 16, 17, 18]] 这个表有5个垂直的列中,包含数字1, 6, 8, 12, 15,2, 7, 9, 13, 16,3, 10, 14, 17,4, 11, 18,和5。如果我们反向每一列中,我们得到的名单15, 12, 8, 6, 1,16, 13, 9, 7, 2,17, 14, 10, 3,18, 11, …

7
本地字符串时间段
当地时期 接受一个非空字符串s。所述本地周期的小号在索引我是最小的正整数Ñ,对于每个这样的0≤ķ<N ,我们有S [I + K] = S [I-N + K]每当两侧限定。可替代地,它是一个非空字符串的最小长度瓦特使得如果级联WW被放在旁边小号使得的第二拷贝瓦特开始于索引我的小号,那么这两个字符串同意任何地方重叠。 例如,让我们计算(基于0的)索引2 的s =“ abaabbab”的本地周期。 尝试n = 1:然后s [2 + 0]≠s [2-1 + 0],因此此选择不正确。 尝试n = 2:然后s [2 + 0] = s [2-2 + 0]但s [2 + 1]≠s [2-2 + 1],所以这也不正确。 尝试n = 3:然后未定义s [2 + 0-3],s [2 + 1] …
20 code-golf  string 

30
下一个颜色
挑战 将彩虹视为七种颜色,以字符串表示Red Orange Yellow Green Blue Indigo Violet。 您的任务是创建一个程序,以接收这些颜色之一作为输入,然后依次输出彩虹色。这包括重叠Violet -> Red 输入值 包含一种彩虹色的字符串。 输出量 接下来是彩虹的颜色。 规则 颜色名称区分大小写。它们必须匹配此帖子中包含的大小写。 输入将始终有效。对于无效输入,允许任何行为。 这是代码高尔夫球,因此最短的字节数将获胜! 输入和输出示例 Input -> Output Red -> Orange Orange -> Yellow Yellow -> Green Green -> Blue Blue -> Indigo Indigo -> Violet Violet -> Red

14
这是一个截断的三角形数字吗?
相关OEIS序列:A008867 截断三角数 三角数的一个共同属性是它们可以排列成三角形。例如,取21并排列成os 的三角形: Ø OO oo oo oo oo 让我们定义一个“截断:”从每个角切割相同大小的三角形。截断21的一种方法如下: 。 。。 oo oo 。oo。 。。哦。。 (的三角形.是从原始三角形切出的)。 o剩下12 秒,因此12是一个截断的三角形数字。 任务 您的工作是编写一个程序或函数(或等效函数),该程序或函数采用整数并返回(或使用任何标准输出方法)数字是否为截断的三角形数字。 规则 没有标准漏洞。 输入是非负整数。 切口的边长不能超过原始三角形的一半(即,切口不能重叠) 切口的边长可以为零。 测试用例 真相: 0 1 3 6 7 10 12 15 18 19 虚假: 2 4 5 8 9 11 13 14 16 17 …
20 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 

21
如何以最少的字节数打印以下格式?
这个挑战的灵感来自这个现已删除的问题。 以一个正整数N作为输入,并输出遵循以下模式的数字为1 .. N 2的矩阵: 在第一行中用1 .. N填充,然后在最后一行(行号N)中用(N + 1).. 2N填充,然后在第二行中用(2N + 1).. 3N填充,并继续直到您填充所有行。 输出格式灵活,因此可以接受列表列表等。 N = 1 1 N = 2 1 2 3 4 N = 3 1 2 3 7 8 9 4 5 6 N = 4 1 2 3 4 9 10 11 12 13 …

26
给定数字,打印出其“总和”
给定一个数字作为输入,打印出其总和 什么是集体款项? 考虑数字13214,输入 从左侧开始遍历每个数字,我们将能够获得其总和。 1 表示查看第一个数字,并将其添加到总和中,sum = 1 3 表示查看“前3位数字”并将其添加到总和中,总和= 1 + 132 2 表示查看“前2位数字”并将其添加到总和中,总和= 1 + 132 + 13 1 表示查看第一个数字,并将其添加到总和中,总和= 1 + 132 + 13 + 1 4 表示查看“前4位数字”并将其添加到总和中,总和= 1 + 132 + 13 + 1 + 1321 总和= 1468这是您的输出 特别案例: 如果遇到0,则显然我们将总和保持不变 The number 1301 would have a …

27
水平对齐的ASCII艺术
您的任务是接受两个“ ASCII Art”作为输入,并水平对齐每个艺术品。 例如,假设您有两个字符串,"abc\ndef"并且"123\n456"。您需要将它们水平对齐以产生字符串"abc123\ndef456“。我称其为“水平对齐”,因为在打印时输入看起来像这样: abc def 和: 123 456 打印后的输出将如下所示: abc123 def456 请注意如何将一个输入放置在另一个输入的旁边。 输入值 输入将是字符串,并且可以作为两个单独的参数或字符串序列。 艺术人物的十进制代码范围为32-126(含)。 可以支持任意数量的艺术来对齐,而不是仅支持两种(但是显然您必须支持至少两种)。 您可以假设每种艺术品的尺寸都相同,并且至少包含一行。 您必须至少能够支持100x100的角色艺术。 为了与站点上的约定保持一致,参数顺序无关紧要。左边或右边是哪种艺术都没有关系。 输出量 输出将是如上所述的对齐艺术,返回或输出到标准输出。 可选的任何结尾空格。 对齐的艺术之间不得有视觉分隔符。 输入和输出艺术必须是\n或\r字符串分隔。允许2D阵列将太琐碎。 提交的内容可能是功能或完整程序。 测试用例: "abc\ndef", "123\n456" -> "abc123\ndef456". "qwertyuiop\n asdfghjkl", "Some other\nTextFiller" -> "qwertyuiopSome other\n asdfghjklTextFiller" " * \n *** \n*****\n *** \n * \n", " + …

10
最小的稀疏标尺
长度为n的标准标尺在位置0、1,...,n(以任何单位为单位)上具有距离标记。一个稀疏的统治者拥有这些商标的一个子集。标尺可以测量距离ķ如果它具有在位置的标记p和q与p - q = ķ。 挑战 给定正整数n,输出长度为n的稀疏标尺所需的最小标记数,以便它可以测量所有距离1,2,...,n。 这是OEIS A046693。 例如,对于输入6,输出为4。即,标尺为0、1、4、6的标尺工作为1-0 = 1、6-4 = 2、4-1 = 3、4-0 = 4、6-1 = 5和6-0 = 6。 附加规则 该算法应对任意大的n有效。但是,如果程序受内存,时间或数据类型的限制,则可以接受。 输入/输出可以通过任何合理的方式获取/产生。 允许使用任何编程语言编写程序或功能。禁止出现标准漏洞。 以字节为单位的最短代码获胜。 测试用例 1 -> 2 2 -> 3 3 -> 3 4 -> 4 5 -> 4 6 -> 4 7 -> 5 8 …

11
给我打印一个秤
不好了!我很快就要进行理论测试,还不记得秤了!通过打印以下内容来帮助我记住我的主要体重秤: 7♯ - C♯ D♯ E♯ F♯ G♯ A♯ B♯ C♯ 6♯ - F♯ G♯ A♯ B C♯ D♯ E♯ F♯ 5♯ - B C♯ D♯ E F♯ G♯ A♯ B 4♯ - E F♯ G♯ A B C♯ D♯ E 3♯ - A B C♯ D E F♯ G♯ …

16
贫因数
如果的正整数具有(严格地)比其后继者和前任者少的素数(不计算多重性),我们将其称为因数贫乏数。N&gt;2ñ&gt;2N > 2 换句话说,和,其中是独特的素因数的数。ω (Ñ )&lt; ω (Ñ + 1 )ω (Ñ )ñω(N)&lt;ω(N−1)ω(N)&lt;ω(N−1)\omega(N) < \omega(N - 1)ω(N)&lt;ω(N+1)ω(N)&lt;ω(N+1)\omega(N) < \omega(N + 1)ω(N)ω(N)\omega(N)NNN 任务 您可以在以下I / O格式中进行选择: 取整数并输出因数贫乏的。如果选择此选项,则 可以是0或1索引。Ñ 第 ÑNNNNthNthN^{\text{th}}NNN 取一个正整数并输出前因数贫乏的数字。NNNNNNN 无限期打印序列。 您可以使用任何编程语言,通过任何标准方法接受输入并提供输出,同时请注意,默认情况下禁止这些漏洞。这是代码高尔夫球,因此遵守规则的最短提交将获胜。 我将不包括单独的测试用例,因为竞争的方法不同,但是您可以参考此序列的前100个术语,即OEIS A101934: 11, 13, 19, 23, 25, 27, 29, 37, 41, 43, 47, 49, 53, 59, 61, 64, …

20
在斐波那契数列Mod K中找到缺失的数字
受此Math.SE问题的启发。 背景 的斐波纳契数列(称为F)是序列,开始0, 1使得每个号码(F(n))(前两个后)是两个前(总和F(n) = F(n-1) + F(n-2))。 斐波那契数列mod K(称为M)是斐波那契数列mod K()的序列M(n) = F(n) % K。 可以证明,斐波那契数列对所有K都是循环的,因为每个值都是由前一对确定的,并且只有K 2个可能的非负整数对都小于K。因为斐波那契数列K在第一个重复的术语对之后是循环的,在第一个重复的术语对之前从未出现在Fibonacci序列mod K中的数字将永远不会出现。 对于K = 4 0 1 1 2 3 1 0 1 ... 对于K = 8 0 1 1 2 3 5 0 5 5 2 7 1 0 1 ... 请注意,对于K = …

9
纸牌游戏中的手形
一副纸牌是S西服和R等级的直角乘积。许多(尽管不是全部)纸牌游戏使用S=4和R∊{6,8,13}。一副H牌从甲板上发出。它的分布(也称为“手形”)是一个数组,用于描述您从每套西服中获得多少张牌,而忽略西服的顺序(因此,就像是多套)。鉴于分布D满足len(D)=S,1≤sum(D)=H≤S×R,0≤D[i]≤R,D[i]≥D[i+1],发现它发生的概率。 输入:一个整数R和一个数组D。 输出:小数点后至少5位数字的概率;尾随零可以被跳过;科学记数法还可以。 禁止漏洞。最短的胜利。 测试: R D probability 13 4 4 3 2 -&gt; 0.2155117564516334148528314355068773 13 5 3 3 2 -&gt; 0.1551684646451760586940386335649517 13 9 3 1 0 -&gt; 0.0001004716813294328274372174524508 13 13 0 0 0 -&gt; 0.0000000000062990780897964308603403 8 3 2 2 1 -&gt; 0.4007096203759162602321667950144035 8 4 2 1 1 -&gt; 0.1431105787056843786543452839337155 …

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.