Questions tagged «code-golf»

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

6
类Kolakoski自参考序列
这是如何定义Kolakoski序列(OEIS A000002)的方法: 所述Kolakoski序列是包含序列1和2,并且n该序列的第i个元素是长度n个组相等的元素(运行)的序列本身中的。序列的前20个术语以及相应的长度为: 1 2 2 1 1 2 1 2 2 1 2 2 1 1 2 1 1 2 2 1 - --- --- - - --- - --- --- - --- --- - 1 2 2 1 1 2 1 2 2 1 2 2 1 本质上,科拉科斯基序列的相等元素的组的长度是科拉科斯基序列本身。 …

6
我不喜欢改变!
输入: 两个没有换行符或空格的字符串。 输出: 两个输入字符串都在单独的行上,两个字符串之一之间在必要时加空格†。并以字符的第三线A,R,M和,代表添加,删除,修改,和改变。 †我们在顶部或底部输入字符串中添加空格(如果需要)。这项挑战的目标是输出ARM尽可能少的变化量(),也称为Levenshtein距离。 例: 假设输入字符串为ABCDEF和AFBECD,则输出为: A B CDEF AFBECD A A RR 这里有一些其他可能的无效输出作为示例(还有很多): ABCDEF AFBECD MMMMM A BCDEF AFBECD A MMMR AB CDEF AFBECD MAMMMR ABC DEF AFBECD MMAMMR ABC DEF AFBECD MMAA RR ABCDEF AFB ECD MMR MA AB CDEF // This doesn't make much sense, AFBECD …
19 code-golf  string 

14
二进制素块
我们正在寻找一个序列 取自然数 1,2,3,4,5,6,7,8,9,10,11,12,13,14... 转换为基数2 1,10,11,100,101,110,111,1000,1001,1010,1011,1100,1101,1110... 连接以上数字 110111001011101111000100110101011110011011110... 将此数字划分为Prime-Chunk (包含数字的质数的块)质数 按升序排列2,3,5,7,11,13,17... [11][011][10010][1110111][10001001101][0101111001101][1110...] 并找到每个块的数字总和 Primes 2 3 5 7 11 13 17 Chunks [11][011][10010][1110111][10001001101][0101111001101][1110...] SumOfDigits 2 2 2 6 5 8 序列 2,2,2,6,5,8,9,10,14,22,11,18,25,27,32,21,28,32,40,40,49,49,32,41,49, 53,63,55,63,70,87,73,51,63,71,78,78,90,107,86,96,108,115,128,138,92,83,95,102,110, 130、106、122、141、149、163、130、140、151、165、181、165、204、200、234、100、130、138、167、149、169、180、209、166、189, 194,222,205,234,260,216,206,217,241,240,267,289,242,274,308,286,329,338,155,189,225,197,240,272,217, 254、282、287、317、281、256、299、286、331、337、316、350、354、391、367、282、327、313、364、358、348、397、406、466 ... 挑战 查找nth以上序列的术语 输入项 一个整数 n>0 测试用例 1->2 3->2 6->8 36->78 60->165 160->581 260->1099 350->1345 …

14
有多少个林奇贝尔号?
挑战 给定一个整数,n作为输入where 36 >= n >= 2,输出base中有多少个Lynch-Bell数字n。 输出必须以10为底。 林奇贝尔数字 在以下情况下,数字是Lynch-Bell数字: 其所有数字都是唯一的(无重复数字) 该数字可被其每个数字整除 它不包含零作为其数字之一 因为所有数字都必须是唯一的,并且每个基数中都有一组有限的单位数字,所以林奇-贝尔数字是有限的。 例如,在基数2中,只有一个Lynch-Bell号码1,因为所有其他号码要么重复数字,要么包含0。 例子 Input > Output 2 > 1 3 > 2 4 > 6 5 > 10 6 > 10 7 > 75 8 > 144 9 > 487 10 > 548 Mathematica Online在10以上的内存不足。您可以使用以下代码生成自己的代码: Do[Print[i," > …

21
它会定期振荡吗?
挑战 给定一个列表,确定将列表分组为增加和减少元素的运行是否将导致大小相等的列表的列表。 换句话说,列表的“转折点”平均间隔开。 例 这是一个例子: 0, 3, 7, 5, 2, 3, 6 0, 3, 7增加,7, 5, 2减少和2, 3, 6增加。因此,这是事实。 另一个例子: 1, 4, 6, 8, 5, 3, 5, 7, 9 1, 4, 6, 8增加,8, 5, 3减少和3, 5, 7, 9增加。因此,这是虚假的。 规则和规格 没有相邻的元素将相等 可以假定所有数字都在您的语言的合理数字范围内 您可以假设所有数字都是整数,如果它可以帮助您打高尔夫 这是代码高尔夫球,因此最短的答案将获胜 以任何合理表示形式的列表形式输入,并以任何真实/虚假值输出。这两个值必须一致。 测试用例 Input -> Output 1, 3, …

15
深度搜索列表
对于此挑战,当且仅当列表完全由整数和有效列表(递归定义\ o /)组成时,列表才被视为有效。对于此挑战,给定一个有效列表和一个整数,返回可以找到该整数的所有深度的列表。 例 让我们考虑list [1, [2, [3, [1, 2, 3], 4], 1], 1]和integer 1。然后,我们可以像这样绘制列表: Depth 0 1 2 3 Num 1 2 3 1 2 3 4 1 1 您会注意到,它1显示在深处0, 1, 3。因此,您的输出应采用0, 1, 3某种合理的格式(顺序无关紧要)。 深度可以是0或1的索引,但是请在提交的内容中指定是哪一个。 测试用例(0索引) 对于列表[1,[2,[3,4],5,[6,7],1],[[[[5,2],4,[5,2]]],6],3]: 1 -> [0, 1] 2 -> [1, 4] 3 -> [0, 2] …

5
这是输家吗?
在棋盘上有一个名为“回家”的游戏。在这个游戏中,两个玩家轮流移动一个棋子。关于如何移动作品有一些规则。转牌时,玩家必须进行以下任一动作来使n为正。 n个空格 左边n个空格 n在左上方(对角线)间隔 将棋子移到棋盘左上角的玩家将赢得比赛。 现在,我们将定义丢失正方形的概念。在此视频中(我从中得到了这个主意),将输方定义为一个方格,在该方格上,任何开始转牌的玩家将被迫采取行动,允许对手强制获胜。丢失正方形的最简单示例是(1,2)处的正方形。(1,2)处的作品可以移动到以下任意位置。 所有这些都为下一位玩家赢得胜利提供了直接途径。 同样可以得出结论,凡是具有一条通向输掉方格的单向方格的方格,都允许玩家从该方格开始,以强制获胜。这意味着,只要不离开亏损方格的任何方格也是亏损方格。 这使我们对损失平方的定义更加简洁: 丢失的正方形是一个不能从任何移动到达另一个丢失的正方形的正方形,而(0,0)是一个丢失的正方形。 任务 给定任意大小的棋盘上正方形的坐标,确定它是否为丢失的正方形。输出两个值,一个用于丢失平方,另一个用于其他平方。 这是代码高尔夫球,因此答案将以字节计分,而字节数越少越好。 测试用例 这是常规的8 x 8棋盘(标记为0)上的所有丢失方格。 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 …

27
找到我的多鞭!
出于此挑战的目的,将polyphthong定义为String的连续切片,该切片仅包含元音,并且长度至少为2。给定非空String作为输入,您的任务是输出其包含的所有polyphthongs 。 例如,"abeoic"具有以下连续切片(以空格分隔): a b e o i c ab be eo oi ic abe beo eoi oic abeo beoi eoic abeoi beoic abeoic 除去那些不包含元音或长度小于2的元音,我们将得到所需的多音节: eo oi eoi 您的提交必须遵守以下规则: 您可以为I / O选择小写或大写,但输出大小写必须与输入大小写匹配。 元音为aeiou(小写)和AEIOU(大写)。y/ Y不被视为元音。 输入将仅包含可打印的ASCII。 如果一个多重声部出现多次,则可以选择仅输出一次或输出所有出现的情况。 允许使用任何合理的I / O格式和方法(对于输入和输出,也可以使用字符列表)。 测试用例 输入->输出(小写) r67 ^^()* 6536782!87-> [] 编程难题和代码高尔夫球-> [] aaand ...我赢了!-> ['aa','aa','aaa'] …
19 code-golf  string 

12
实基转换
对于基数转换,我们遇到了一些挑战,但是所有这些挑战似乎都适用于整数值。用实数做吧! 挑战 输入: 以10为底的实数正数 x。可以将其视为双精度浮点数或字符串。为了避免精度问题,可以将该数字假定为大于10 -6且小于10 15。 甲目标基站 b。这是2到36之间的整数。 甲数的小数位的 Ñ。这是1到20之间的整数。 输出:x在n的底数b中的表示形式,带有n个小数位。 在计算输出表达式时,第n个以外的数字应被截断(而不是四舍五入)。例如,x = 3.141592653589793在base中b = 3是10.0102110122...,因此n = 3输出将是10.010(截断),而不是10.011(舍入)。 对于在小数部分中产生有限位数的x和b,还允许使用等效的无限表示形式(截断为n位)。例如,4.5十进制也可以表示为4.49999...。 不用担心浮点错误。 输入输出格式 x将不带前导零。如果x恰好是整数,则可以假定它的小数部分为零(3.0),也可以不为小数部分(3)。 输出是灵活的。例如,可以是: 代表数字的字符串,在整数和小数部分之间带有合适的分隔符(小数点)。位11,12等等(对于b超过10)可以表示为字母A,B像往常一样,或任何其它不同的字符(请注明)。 一个字符串用于整数部分,另一个字符串用于小数部分。 两个数组/列表,每个部分一个,包含从0到35数字的数字。 唯一的限制是整数和小数部分可以分开(合适的分隔符)并使用相同的格式(例如,[5, 11]对于表示整数部分['5', 'B']的列表和对于表示分数部分的列表,否)。 附加规则 允许使用任何编程语言编写程序或功能。禁止出现标准漏洞。 以字节为单位的最短代码获胜。 测试用例 输出被示出为与数字串0,..., 9,A,..., Z,使用.作为小数点分隔符。 x, b, n -> output(s) 4.5, 10, 5 -> 4.50000 or 4.49999 42, …

27
计算正多边形的面积
给定一个整数,n其中3 <= n < 2^32,计算正n态为1的正多边形的面积;的公式是n * tan(π / n)。对于那些不知道Apothem是什么的人: 正多边形的质点是从中心到边之一的中点的线段。 输出n-gon 的区域作为浮点,且不少于8个小数位。 测试用例 3 5.1961524227 6 3.4641016151 10 3.2491969623 20 3.1676888065 99 3.1426476062 1697 3.1415962425 15000 3.1415926995 注意:上面的测试用例包含的数字比您输出的数字多2个。

8
通过矩阵的最佳路径
给定一个由正整数组成的矩阵,当从左上角元素到右下角遍历时,输出总和最小的路径。您可以垂直,水平和对角移动。请注意,可以上下左右移动,也可以左右移动。 例: 1* 9 7 3 10 2 2 10 4* 1* 1* 1* 7 8 3 6 3 8 9 5* 7 8 10 2 5 2 1* 4 5 1 1 3 6 7 9* 给出最低总和的路径标有星号,并得出以下总和:1 + 4 + 1 + 1 + 1 + 5 + 1 …

30
从数组中随机选择
这个挑战相当简单: 给您一个正整数(不包括0)整数数组,并且必须从该数组中选择一个随机元素。 但是这是一个变数: 选择元素的概率取决于整数的值,这意味着随着整数的变大,它被选中的概率也变大了! 例 给你数组[4, 1, 5]。 在这种情况下,选择4的概率等于4除以数组中所有元素的总和4 / ( 4 + 1 + 5 ) = 4 / 10 =40%。 选择1的概率为1 / 10或10%。 输入项 正整数数组。 输出量 如果使用方法,则返回所选的整数,或将其直接打印到stdout。 规则 这是代码高尔夫球,因此任何语言中以字节为单位的最短代码都胜出。 禁止出现标准漏洞。

14
寻求秘密交换序列
这是一个警察和强盗的挑战,可以在此处找到强盗线程。 您的任务是编写一些输出OEIS序列的代码,并在代码(A______)中包含该序列的名称,并在代码中的序列名称更改为第二个序列的名称时输出另一个单独的序列。 这是Haskell中适用于A000217和A000290的示例。 f x|last"A000217"=='0'=x^2|1>0=sum[1..x] 在线尝试! 然后,您将揭示两个序列之一,而代码则将第二个序列保密。强盗将尝试找出隐藏的序列。如果强盗设法确定您的顺序(或符合条件的其他顺序),您的答案就会被破解。如果在发布答案的一周内没有这样做,则可以将答案标记为“ 安全”,并提供预期的验证解决方案。 安全答案无法破解。 输入输出 从这里取 您的代码可以是一个函数或完整的程序,它通过标准输入法采用n并输出序列的第n个项,该项的第n个项由OEIS页面上提供的索引进行索引。 您必须支持该序列的OEIS b文件中提供的所有值,而不支持b文件中没有的任何数字。 计分 分数将是代码中的字节数,字节越少越好。

6
弹跳顺序
让我们定义一个序列。我们将说一个(n )一种(ñ)a(n)是最小的XXx,它具有以下属性: XXx和ññn是互质的(它们不共享因子) XXx没有出现在序列的前面 |n − x | > 1|ñ-X|>1个|n - x| > 1 与大多数序列不同,我们序列的域和范围是大于 1 的整数。 让我们计算前几个术语。 一个(2 )一种(2)a(2)必须至少为4,但是4和2的因子为2,因此一个(2 )一种(2)a(2)必须为5。 一个(3 )一种(3)a(3),必须是至少5但5采取的是一个(2 )一种(2)a(2),所以它是至少6,但6股因子与3所以它必须是至少7,7个满足所有三个条件从而a (3 )= 7一种(3)=7a(3)=7。 一个(4 )一种(4)a(4) 2分享一个因素 3太近了 4太近了 5太近了 6股因素 7由a(3)拍摄 8股因素 9好 一个(5 )一种(5)a(5) 2好 任务 在这个挑战中,您将编写一个程序,该程序接受大于1的数字并返回一个(n )一种(ñ)a(n)。 这是一个代码问题,因此答案将以字节计分,而字节数越少越好。 测试用例 这是序列的前几个术语(它们当然是2索引的): 5,7,9,2,11,3,13,4,17,6,19,8,23,22,21,10,25,12,27,16,15,14 奖励有趣的事实 由于对Math.se(证明由罗伯特·以色列链接)这个序列是其自身的逆,这意味着a (a …

22
计算特定值的多项式的第n个迭代;fⁿ(x)
给定一个多项式函数f(例如,作为实数系数的列表p升序或降序),一个非负整数n和一个实数值x,返回: f n(x) 即值˚F(˚F(˚F(... ˚F(X)...))),用于Ñ的应用˚F上X。 使用合理的精度和舍入。 将f作为系数列表的解决方案可能是最有趣的,但是如果您能够将f作为实际函数(从而将此挑战减少为琐碎的“ n次应用函数”),请随时添加非平凡的解决方案之后。 案例案例 p = [1,0,0]或f = x^2, n = 0, x = 3: f 0(3)=3 p = [1,0,0]或f = x^2, n = 1, x = 3: f 1(3)=9 p = [0.1,-2.3,-4]或f = 0.1x^2-2.3x-4, n = 0, x = 2.3: f 0(2.3)=2.3 p = …

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.