Questions tagged «sequence»

对于涉及某种顺序的挑战。


21
算术导数
函数的导数是数学,工程学,物理学,生物学,化学以及许多其他科学的基石。今天,我们将要计算仅与切线相关的东西:算术导数。 定义 此处,算术导数a(n)或n'(A003415)由与函数的导数相似的多个属性定义。 a(0) = a(1) = 0, a(p) = 1,哪里p有素数? a(mn) = m*a(n) + n*a(m)。 第三条规则是基于功能分化的产品规则:对于函数f(x)和g(x),(fg)' = f'g + fg'。因此,用数字(ab)' = a'b + ab'。 还要注意,由于算术导数可以通过此简单关系扩展为负数a(-n) = -a(n),因此输入可能为负。 规则 编写一个程序或函数,给定任何整数n,该程序或函数将返回的算术导数n。 输入为,以避免整数大小和数字过大而无法考虑合理时间的问题。理论上,您的算法仍应能够计算该范围以外数字的算术导数。-230 < n < 230 允许内置符号数学,素因数分解和微分。 例子 > a(1) 0 > a(7) 1 > a(14) # a(7)*2 + a(2)*7 = …

6
您可以通过加倍并重新排列来达到此数字吗?
受到Math.SE上这个问题的启发。 首先,1您可以重复执行以下两个操作之一: 将数字加倍。 要么 以任何您想要的方式重新排列其数字,但不得有任何前导零。 以链接的Math.SE帖子为例,我们可以1000通过以下步骤进行操作: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 125, 250, 500, 1000 您可以通过此过程获得哪些数字,最短的解决方案是什么? 挑战 给定正整数,如果可能的话N,确定N上述过程可以达到的最短整数序列。如果有几个最佳解决方案,请输出其中任何一个。如果不存在这样的序列,则应输出一个空列表。 该序列可以采用任何方便,明确的字符串或列表格式。 您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行参数或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。 这是代码高尔夫球,因此最短的答案(以字节为单位)获胜。 测试用例 这是所有可达的数字列表,最大为256,包括256。第一列是数字(您的输入),第二列是最佳步骤数(可用于检查解决方案的有效性),第三列是专栏是到达那里的一种最佳顺序: 1 1 {1} 2 2 {1,2} 4 3 {1,2,4} 8 4 {1,2,4,8} 16 5 {1,2,4,8,16} 23 7 {1,2,4,8,16,32,23} 29 10 {1,2,4,8,16,32,23,46,92,29} 32 …

30
一半,一半,一半
请考虑以下数字顺序: 0,12,14,34,18,38,58,78,116,316,516,716,916,1116,1316,1516,132,332,532,…0,1个2,1个4,34,1个8,38,58,78,1个16,316,516,716,916,1116,1316,1516,1个32,332,532,… 0, \frac{1}{2}, \frac{1}{4}, \frac{3}{4}, \frac{1}{8}, \frac{3}{8}, \frac{5}{8}, \frac{7}{8}, \frac{1}{16}, \frac{3}{16}, \frac{5}{16}, \frac{7}{16}, \frac{9}{16}, \frac{11}{16}, \frac{13}{16}, \frac{15}{16}, \frac{1}{32}, \frac{3}{32}, \frac{5}{32}, \dots 它枚举单位间隔中的所有二进制分数。[0,1)[0,1个) [0, 1) (为简化此挑战,第一个元素是可选的:您可以跳过它,并考虑序列以1/2开头。) 任务 编写一个程序(完整的程序或功能),以... 选择以下行为之一: 输入n,输出序列的第n个元素(0索引或1索引); 输入n,输出序列的前n个元素; 不输入任何内容,输出可以一一取整的无限数序列; 规则 您的程序至少应支持前1000个项目; 您可以根据需要选择输出小数或分数(内置,整数对,字符串)。 此问题中不允许输入/输出为二进制数字; 这是代码高尔夫球,最短的代码获胜; 不允许出现标准漏洞。 测试用例 input output 1 1/2 0.5 2 1/4 0.25 3 3/4 0.75 …

8
可以从素数生成方树年轮吗?
显然是的!三个简单的步骤。 步骤1 令f(n)表示素数计数函数(素数小于或等于n)。 如下定义整数序列 s(n)。对于每个正整数n, 将t初始化为n。 只要t既不是素数也不是1,则将t替换为f(t)并进行迭代。 迭代次数为s(n)。 该迭代过程是保证最终因为˚F(Ñ)< ñ所有Ñ。 考虑例如n= 25。我们初始化t =25。由于这不是素数也不是1,我们计算f(25)为9。这成为t的新值。这既不是素数也不是1,所以我们继续:f(9)是4。我们再次继续:f(4)是2。因为这是素数,所以我们在这里停止。我们完成了3次迭代(从25到9,然后到4,再到2)。因此s(25)为3。 序列的前40个词如下。该序列不在OEIS中。 0 0 0 1 0 1 0 2 2 2 0 1 0 2 2 2 0 1 0 3 3 3 0 3 3 3 3 3 0 3 0 1 1 1 1 1 …

30
尽可能公平
介绍 在这个挑战中,您应该将整数分成两部分。由于没有人喜欢小菜一碟,因此您的目标是尽可能做到公平。例如,如果您想将整数7129分成两部分,则有3种可能的方法。 7,129,71,29并且712,9都是可能的,但这71,29是将其分为两部分的最公平的方法,因为它最大程度地减少了两者之间的差异: 7 129 -> |7-129| = 122 71 29 -> |71-29| = 42 712 9 -> |712-9| = 703 挑战 给定一个整数,如上所述,确定对其进行分区的最佳可能方式并报告产生的差异。 规则 拆分仅对长度至少为2的整数有意义,输入将​​始终≥10 输入可以是整数,数字列表或字符串 您不必处理无效的输入 测试用例 您只需要报告所产生的差异,分区仅在此处进行说明: 10 -> 1,0 -> 1 11 -> 1,1 -> 0 12 -> 1,2 -> 1 13 -> 1,3 -> 2 101 …

30
受限制的迷你挑战警察的线程
强盗的线 作为警察的任务是选择三件事: 一种编程语言 OEIS序列 字节集 然后,您将以该语言秘密编写一个程序,该程序仅使用集合中的字节来计算第n个术语序列。您将揭示三段信息,以便强盗可以尝试找出该程序。 答案将根据字节集中的字节数进行评分,得分越高越好。破解的答案的自动评分为0。如果您在一周后未破解答案,则可以显示预期的程序并将答案标记为“安全”。 答案必须能够计算序列b文件中的每个术语,但不需要在之后计算任何术语。 警察和强盗的序列可以为1或0索引。 这是一个Python脚本,用于检查您的代码是否匹配给定的字节集。

24
阶乘和永无止境的循环!
如您所知,正整数的阶乘n是等于或小于的所有正整数的乘积n。 例如 : 6! = 6*5*4*3*2*1 = 720 0! = 1 现在,我们将定义一个不相关名称的特殊操作,例如sumFac: 给定正整数n,sumFac(n)是数字的阶乘之和。 例如 : sumFac(132) = 1! + 3! + 2! = 9 任务 您的任务(无论是否选择接受)都是将应用的序列(可能是无限的)返回sumFac给输入中给定的整数。 范例: 132 -> 132, 9, 362880, 81369, 403927, ... 但这还不是全部!确实,的应用sumFac最终将创造一个循环。您还必须返回此循环! 如果您的语言具有内置阶乘,则可以使用它。我对返回类型并不挑剔,您只需要以人类可以理解的格式返回sumFac应用程序的序列和循环。 编辑:为了帮助您更好地可视化输出,我复制下面的Leaky Nun的内容应该是什么: [132, 9, 362880, 81369, 403927, 367953, 368772, 51128, 40444, 97, 367920, …

10
完美的车牌
完美的车牌 从几年前开始,我在开车时给自己做了一个小游戏:检查附近的车牌是否“完美”。这是相对罕见的,但是当您找到它时会感到很兴奋。 要检查车牌是否完美: 总结字符,其中A = 1,B = 2,... Z = 26。 取每个连续的数字,并求和;将这些总和相乘。 如果第1部分和第2部分中的值相等,那么恭喜!您已经找到了完美的车牌! 例子 License plate: AB3C4F Digits -> 3 * 4 = 12 Chars -> A + B + C + F = 1 + 2 + 3 + 6 = 12 12 == 12 -> perfect! License plate: …

17
扭曲的最小素数(A068103)
给定一个数字n,手头的任务将找到最小的素数,该最小素数以数字的AT LEAST 开头。这是我在OEIS(A068103)上找到的序列。 n2 下面给出了序列中的前17个数字,如果您想要更多,我将不得不执行序列,我不介意这样做。 0 = 2 1 = 2 2 = 223 3 = 2221 4 = 22229 5 = 2222203 6 = 22222223 # Notice how 6 and 7 are the same! 7 = 22222223 # It must be **AT LEAST** 6, but no more than necessary. …

30
验证随机模具自卸车
差不多六年前,老乡PPCG成员steenslag 发布以下挑战: 在标准骰子(骰子)中,数字的排列方式是使相对的面数增加到七个。用您喜欢的语言编写尽可能最短的程序,该程序输出一个随机抛出,然后输出9个随机小费。翻斗是骰子的四分之一转,例如,如果骰子面向5,则所有可能的翻斗都是1,3,4和6。 所需输出示例: 1532131356 因此,既然每个人都完全忘记了它,并且获胜的答案早已被接受,我们将编写一个程序来验证由提交的解决方案生成的模具翻转序列。(这很有道理。假装确实如此。) 挑战 系统会为您的程序或函数 指定一个序列,例如1532131356。验证每个连续数字为: 不等于前一位 不等于7减去前一位数字 (您不必验证第一位数字。) 规则 如果输入有效,则程序必须返回真实值,否则返回假值。 您可以假设输入仅包含1-6位数字,并且至少包含1个字符。序列不会像Steenslag的挑战那样具有固定的长度。 您可以将输入作为字符串("324324"),数组或类似数组的数据结构([1,3,5])或多个参数(yourFunction(1,2,4))。 标准I / O和漏洞规则适用。 测试用例 特鲁西 1353531414 3132124215 4142124136 46 4264626313135414154 6 2642156451212623232354621262412315654626212421451351563264123656353126413154124151545145146535351323 5414142 虚假 重复数字 11 3132124225 6423126354214136312144245354241324231415135454535141512135141323542451231236354513265426114231536245 553141454631 14265411 模具的相对面 16 42123523545426464236231321 61362462636351 62362462636361

14
毕达哥拉斯三重序列
甲毕达哥拉斯三重由三个正整数a,b和c,使得2 + B 2 = C 2。这样的三元组通常写为(a,b,c),众所周知的例子是(3,4,5)。如果(a,b,c)是毕达哥拉斯三元组,那么对于任何正整数k,(ka,kb,kc)也是。原始毕达哥拉斯三元组是a,b和c为互质的三元组。 利用这些知识,我们可以通过将最小长度的三元组链接在一起来创建一个序列,其中序列中的下一个元素是最小的勾股毕生哥三元组的斜边(最大数量),其中前一个元素是其长度中的最小元素。 从最小的原始毕达哥拉斯三元组(3、4、5)开始。序列以开头3,斜边(序列中的下一个元素)为5。然后找到最小的原始毕达哥拉斯三重5腿,然后得到(5,12,13)。因此序列继续13。 永远输出该序列,或采用整数输入n并输出n该序列的第一个元素(零或一个索引)。 您需要至少通过和包括支持输出28455997,但是如果您正在使用的数据类型的限制突然升高,则需要为该新限制工作。因此,您不能对数字列表进行硬编码。 3 5 13 85 157 12325 90733 2449525 28455997 295742792965 171480834409967437 656310093705697045 1616599508725767821225590944157 4461691012090851100342993272805 115366949386695884000892071602798585632943213 12002377162350258332845595301471273220420939451301220405 OEIS A239381 相似的序列(不输出这些!): A018928 A077034(奇数词)

24
这是Loeschian号码吗?
正整数k是Loeschian数,如果 k可以表示i*i + j*j + i*j为i,j整数。 例如,第一正Loeschian号码为:1(i=1,j=0); 3(i=j=1); 4(i=2,j=0); 7(i=2,j=1); 9(i=-3,j=3); ...注意i,j对于给定k的不是唯一的。例如,9也可以与产生的i=3,j=0。 这些数字的其他等效特征是: k可以表示i*i + j*j + i*j为i,j非负整数。(对于每对整数i,j都有一对给出相同值的非负整数k) 有一组k连续的六边形在六边形网格上形成网格化(请参见k = 4和的插图k = 7)。(由于这个属性,这些数字可在移动蜂窝通信网络中找到应用。) 在序列的OEIS页面中查看更多特征。 挑战 给定一个正整数,如果它是Loeschian数,则输出真实结果,否则,则输出虚假结果。 程序或函数应处理(例如不到一分钟)最多达1000或数据类型限制的输入。 代码高尔夫。最短的胜利。 测试用例 以下数字应输出真实结果: 1, 4, 7, 12, 13, 108, 109, 192, 516, 999 以下数字应输出虚假结果: 2, 5, 10, 42, 101, 102, 128, 150, 501, …
33 code-golf  math  number  number-theory  decision-problem  code-golf  kolmogorov-complexity  code-golf  sequence  code-golf  path-finding  chess  code-golf  string  ascii-art  kolmogorov-complexity  code-golf  math  arithmetic  code-golf  code-golf  number  code-golf  geometry  code-golf  math  code-golf  code-golf  kolmogorov-complexity  alphabet  code-golf  regular-expression  hexagonal-grid  king-of-the-hill  path-finding  java  code-golf  string  sorting  code-golf  string  grid  code-challenge  compression  code-golf  random  code-golf  sequence  arithmetic  code-golf  number  grid  tiling  code-golf  tips  code-golf  sequence  number-theory  recursion  code-golf  string  grid  code-golf  math  number  combinatorics  permutations  string  code-challenge  code-golf  sequence  number-theory  subsequence 

29
它是前缀代码吗?
在信息论中,“前缀代码”是一个字典,其中所有键都不是另一个的前缀。换句话说,这意味着没有一个字符串以其他任何字符串开头。 例如,{"9", "55"}是前缀代码,但{"5", "9", "55"}不是。 这样做的最大优点是,可以将编码的文本记下来,并且它们之间没有分隔符,并且仍然可以唯一地解密。这在诸如Huffman编码之类的压缩算法中得到了体现,该算法始终会生成最佳的前缀代码。 您的任务很简单:给定一个字符串列表,确定它是否是有效的前缀代码。 您的输入: 将是任何合理格式的字符串列表。 仅包含可打印的ASCII字符串。 将不包含任何空字符串。 您的输出将是一个true / falsey值:如果是有效的前缀代码,则为True,否则为falsey。 这是一些真实的测试用例: ["Hello", "World"] ["Code", "Golf", "Is", "Cool"] ["1", "2", "3", "4", "5"] ["This", "test", "case", "is", "true"] ["111", "010", "000", "1101", "1010", "1000", "0111", "0010", "1011", "0110", "11001", "00110", "10011", "11000", "00111", "10010"] 以下是一些错误的测试案例: ["4", "42"] …

22
特朗普需要您的帮助来阻止Starman!
一个来自星空的人来到了地球!幸运的是,美国总统唐纳德·特朗普(Donald Trump)死于无边。使用此模具,他可以想出您作为Podunk市长必须使用的数字,以确定应该派遣谁来制止入侵者!但是请注意,您只能在青蛙背面发送有限数量的字节! 给定用户输入(将为正整数),您必须根据数字所在的类别返回字符串。 如果该数字是斐波那契数字,则必须输出Ness。 如果该数字是Lucas数字,则必须输出Lucas。 如果数字是双方一个Lucas数和Fibonacci数,你必须输出特拉维斯。 如果数字是既不 AA Lucas数也不是斐波那契数,你必须输出皮皮。 例子 这是一堆测试用例: 1 =>特拉维斯 2 =>特拉维斯 3 =>特拉维斯 4 =>卢卡斯 5 =>尼斯 6 =>皮皮 7 =>卢卡斯 8 =>尼斯 610 =>尼斯 722 =>皮皮 843 =>卢卡斯 规则 这是代码高尔夫球,最短的答案以字节为单位。 您的程序可以是完整程序,也可以是(n匿名)函数。 奖金 您可以使用一些奖金来帮助您的青蛙更快地将数据提供给特朗普总统: 对于-15字节:如果输入数字为2016,则必须输出Trump,因为他处于总统任期的顶峰。

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.