Questions tagged «sequence»

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

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
高尔夫自定义斐波那契数列
的斐波那契序列是一个相当众所周知的事情在这里。哎呀,它甚至有自己的标签。但是,尽管如此,我们肯定会坚持我们的根源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 …

30
回答链斐波那契
(灵感来自ASCII的95个字符... 95电影行情) 挑战 给定输入n,输出nth 斐波那契数。您可以使用0或1建立索引,请在您的提交中注明。很简单,是吗?要注意的是,您必须采用上一个答案的字符集,从中删除两个字符,然后添加一个单独的字符。单独的字符必须 不是来自前一个答案的字符集 来自(可打印的ASCII,空格,换行符,水平制表符)的集合 因而你总字符集的大小将正好一个比前一个上回答的更小的集合。 最初的答案 第一个提交必须包含一个子集(所有可打印的ASCII,空格,换行符和水平制表符),并且删除了两个字符。此后的每个提交都必须将其答案限制为这种原始的纯ASCII格式(这意味着您不能添加Unicode或扩展ASCII字符……很抱歉,APL等人,Jelly)。 实例和说明 假设第一个答案在C中,并且包含(几乎所有可打印的ASCII,换行符和水平制表符),并从其字符集中省略%和^。然后,第二个提交必须从上一个字符集(几乎所有可打印的ASCII,换行符和水平制表符)中删除两个字符,并添加%或^。也许这是一个单行的PowerShell答案,而忽略了换行符。等等。 如果上一个答案print(){}!*+的字符集为12个字符,则您提交的内容可能有print(){}!10个字符和一个附加字符,print(){!+10个字符和一个附加字符,依此类推。 如果以前的答案有print(){}!*+其字符集(12个字符),提交的内容可能不具有print()和&(8个字符)作为它的字符集,因为12 - 8 > 1。 如果以前的答案有print(){}!*+其字符集(12个字符),提交的内容可能不会有print(){}!(10个字符),再加上额外的字符*作为其字符集,因为即使那是11个字符,则*包括在上一组。 并非您的字符集中的每个字符都必须对提交内容有所帮助。例如,如果先前的答案print(){}!*+以其字符集为准,并且您的语言具有内置功能,!可以计算斐波那契数列并#启动注释,则您的提交可能!#print(){}仍然有效。 您可以多次使用字符集中的同一字符。例如,假设您的字符集为!*#_,您的答案可能是!!!**#**#_!!并且将是可接受的。 除了您的代码(并且解释也不错!)之外,还请明确列出您的字符集,以使以后的提交更加容易。 获奖 挑战的获胜者将是发布第二个最新提交的人(即不是最后发布的人,因为他们打破了链条)。 最终规则 通常的答案链规则适用: 同一个人不能连续发布两次 如果一个答案被认为是无效的(例如,它使用了禁止字符或计算不正确),则需要将其删除(以及所有后续的答案也都将其链接) 张贴“同时”的两个用户将不得不保留较早的提交 同一语言不能连续发布两次。为了该规则的目的,相同家族的语言(例如,Python 2和Python 3)被视为“相同语言”。 最后的事情: 如果按“最旧的”排序,则此帖子效果最佳,以便正确排列答案。 Kyle Gullion在这里用Python构造了一个代码检查器,以验证您是否丢失或使用错误的字符。

12
查找原始字符串,不重复,中间不重复
有时会发生这样的情况:在输入句子时,我会分心,最终两次连续输入相同的单词两次。 为了确保其他人不会对此感到烦恼,您的任务是编写一个解决此问题的程序! 任务 给定一个输入字符串(如果对您的语言而言很重要,则可以假定不包含换行符的仅ASCII输入。)str,在其中间某处包含一个子字符串,该子字符串立即连续出现两次,并返回带有此字符串的一个实例的字符串子字符串已删除。 如果存在多种可能性,则返回可能的最短答案(即,选择最长的连续重复子串并删除该子串)。 如果有多个等长的连续重复子字符串,请删除第一个(即从前向后读取该字符串时遇到的第一个)。 您可以假设输入正确(即始终包含一个连续的重复子字符串),这可能有助于降低它的负担。 例子 输入:hello hello world->输出:hello world。 输入:foofoo->输出:foo。(因此:是的,字符串可能只包含两次重复部分)。 输入:aaaaa->输出:aaa,因为最长的重复连续子字符串在此处aa。 输入:Slartibartfast->这不是有效的输入,因为它不包含连续的重复子字符串,因此您无需处理这种情况。 输入:the few the bar->这是另一个无效的输入,因为重复部分应立即跟随原始部分。在这种情况下,the并且the之间用其他分隔符隔开,因此此输入无效。 输入:ababcbc->输出:abcbc。两个可能最长的连续重复子串是ab和bc。如ab字符串前面所述,这是正确的答案。 输入:Buffalo buffalo Buffalo buffalo buffalo buffalo Buffalo buffalo。输出:Buffalo buffalo buffalo buffalo Buffalo buffalo。(执行的替换应区分大小写)。 输入:Sometimes it happens that while typing a sentence, I am distracted and I end up typing the …

22
递归字符串替换
任务 编写一个程序或函数,给出给定的三个字符串A, B, C会生成一个输出字符串,其中Bin的每个实例A都已用递归替换C。递归替换表示重复替换,其中在每一步中Bin的所有不重叠实例A(从左到右贪婪地选择)都替换为,C直到B不再包含在中A。 输入输出 您可以对I / O使用任何默认方法。 字符串将仅包含可打印的ASCII字符(并且可以包含任何一个)。 B永远不会是一个空字符串,而A并且C可能是。 字符串应被视为纯文本,例如,您不能将其B视为Regex模式。 输入的某些组合永远不会终止。在这种情况下,您的程序可以执行任何操作。 测试用例 这些格式为: A/B/C\nOutput Hello, world!/world!/PPCG Hello, PPCG Uppercase is up/up/down Uppercase is down ababababa/aba/ccc cccbcccba delete/e/{empty string} dlt {empty string}/no/effect {empty string} llllrrrr/lr/rl rrrrllll +-+-+-+/+-+/+ + ababababa/aba/bada badabbadbada abaaba/aba/ab abb ((())())())/()/{empty string} ) 不会终止的示例: grow/ow/oow loop/lo/lo
25 code-golf  string  substitution  code-golf  math  code-golf  string  set-theory  code-golf  code-golf  compile-time  code-golf  kolmogorov-complexity  binary  code-golf  sequence  cops-and-robbers  code-golf  subsequence  card-games  code-golf  sequence  primes  code-golf  code-golf  number  graphical-output  music  code-golf  ascii-art  code-golf  string  lambda-calculus  code-golf  string  code-generation  code-golf  unicode  code-golf  math  combinatorics  code-golf  balanced-string  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-challenge  fastest-code  chess  code-golf  math  graphical-output  code-golf  string  hello-world  animation  code-golf  number  arithmetic  code-golf  integer  code-golf  code-golf  combinatorics  code-golf  kolmogorov-complexity  graphical-output  code-golf  string  code-golf  code-golf  game  code-golf  math  combinatorics  code-golf  ascii-art  popularity-contest  random  code-golf  arithmetic  number-theory  integer  code-golf  tips  underload  code-golf  math  sequence  primes  code-golf  math  path-finding  code-golf  ascii-art  primes  code-golf  kolmogorov-complexity  alphabet 

30
大数字:超分解
该问题已重做,请重新阅读。 超析因 超析因数是可以使用以下函数生成的数字序列: a(n) = n! ^ n! 最终值迅速上升。 旁注:这是OEIS中的条目A046882。同样与之相关的是超分解因子,它仍然非常庞大,但是序列较小:A002109 你的任务 您的任务是将这些数字转换为您的语言。你的程序将计算所有ultrafactorials之和从0到包容性 n。 输入项 您的程序可能只接受一个输入:一个数字,类似于要添加到总和中的最后一个a(n)超因子。确保输入为正或0。 输出量 只要某处有可见的数字总和,输出就完全取决于您。 规则 您可以假设所有整数,也就是所有整数输入,并使用整数计数循环产生一些结果。 测试用例 Input: -1 Output: Any kind of error (because -1! is undefined), or no handling at all Input: 0 Output: 1 Input: 1 Output: 2 Input: 2 Output: 6 Input: 3 …

24
计算袋鼠序列
背景故事 免责声明:可能包含有关袋鼠的虚假信息。 袋鼠穿越了几个发展阶段。随着年龄的增长和力量的增强,他们可以跳得更高和更长,并且在饥饿之前可以跳更多次。 在第1阶段,袋鼠很小,根本无法跳跃。尽管如此,还是不​​断需要营养。我们可以这样表示第1阶段袋鼠的活动模式。 o 在阶段2中,袋鼠可以跳一点,但饿之前不能超过2跳。我们可以代表一个阶段2这样袋鼠的活动模式。 o o o o o 在第2阶段之后,袋鼠会迅速改善。在随后的每个阶段,袋鼠都可以跳得更高一点(在图形表示中为1个单位),并且是原来的两倍。例如,第3阶段袋鼠的活动模式如下所示。 o o o o o o o o o o o o o o o o o 所有这些跳跃都需要能量,所以袋鼠在完成每种活动模式后都需要营养。所需的确切数量可以如下计算。 在阶段n袋鼠的活动模式中为每个o分配高度,即从1到n的数字,其中1对应地面,n对应最高位置。 计算活动模式中所有高度的总和。 例如,阶段3袋鼠的活动模式包括以下高度。 3 3 3 3 2 2 2 2 2 2 2 2 1 1 1 1 1 …

30
霍夫施塔特Q序列
定义 a(1)= 1 a(2)= 1 对于n> 2的a(n)= a(na(n-1))+ a(na(n-2))其中n是整数 任务 给定正整数n,生成a(n)。 测试用例 n a(n) 1 1 2 1 3 2 4 3 5 3 6 4 7 5 8 5 9 6 10 6 11 6 12 8 13 8 14 8 15 10 16 9 17 10 18 11 …

19
无限FTW
所述无限斐波纳契字是一个特定的二进制数字,其通过有限二进制字重复级联计算无限序列。 让我们定义一个斐波那契型字序列(或FTW序列)是任何序列 ⟨W Ñ ⟩其如下形成。 开始使用两个任意的二进制数字数组。让我们将这些数组称为W -1和W 0。 对于每个N> 0,让W¯¯ Ñ ≔w ^ n-1个 ∥w ^ N-2 ,其中∥表示级联。 递归定义的一个后果是,w ^ Ñ总是的前缀w ^ n + 1个,因此,所有的w ^ ķ使得K>Ñ。在某种意义上,这意味着序列⟨W Ñ ⟩收敛到一个无限的字。 形式上,让W¯¯ ∞是唯一的无限阵列使得W¯¯ Ñ是的前缀W¯¯ ∞所有Ñ≥0 。 我们将由上述过程形成的任何无限词称为无限FTW。 任务 写接受两个二进制字的程序或函数w ^ -1和w ^ 0作为输入,并打印W¯¯ ∞,由下面的,额外的,遵守规则: 您可以按任何顺序接受这些词;作为两个数组,一个数组数组,两个字符串,一个字符串数组或一个带有您选择的定界符的单个字符串。 您可以在每对相邻数字之间不使用分隔符或使用一致的分隔符来打印无限单词的数字。 出于所有目的,假定您的代码将永远不会耗尽内存,并且其数据类型不会溢出。 特别是,这意味着由于崩溃而导致的任何STDOUT或STDERR输出都将被忽略。 如果我在我的机器上运行的代码(英特尔i7-3770,16吉布RAM,Fedora的21),一分钟和管道的输出wc -c,它必须打印至少100万位w ^ ∞为(W …

19
评估Dotty字符串
编写一个程序,接收仅包含字符.和的奇数长度的字符串:。借助最初为空的堆栈,从该字符串生成一个数字,如下所示: 对于字符串中的每个字符c(从左到右)... 如果c是.并且堆栈中的元素少于2个,则将1推入堆栈。 如果c是.并且堆栈中有2个或更多元素,请从堆栈中弹出两个顶部值,并将它们的和推入堆栈中。 如果c是:并且堆栈中的元素少于2个,则将2推入堆栈。 如果c为:且堆栈具有2个或多个元素,请从堆栈中弹出两个顶部值,然后将其乘积推入堆栈。 结果数字是堆栈顶部的值。您的程序应将此编号打印到标准输出(带有可选的尾随换行符)。 (少量分析表明,除非字符串的长度为偶数,否则将仅剩一个数字,这就是我们忽略这些数字的原因。实际上,堆栈中最多不会包含2个元素。) 例如,数字为::...:.:.9: 2 1 2 2 /______ stack just after the character below is handled 2 2 4 4 5 5 7 7 9 \ : : . . . : . : . <-- string, one character at a time 为了进行完整性检查,以下是所有长度为1、3和5的字符串的数字: . …

27
一个月中有几天?
给定一个月的文本表示形式(不区分大小写的全名或3个字符的缩写),请返回该月的天数。 例如,december,DEC,和dec都应该返回31。 2月可以有28天或29天。 假设输入的是正确格式之一的月份。

13
两个回文不足
一些数字(例如)是以10为底的回文数:如果以相反的顺序写数字,则会得到相同的数字。142411424114241 一些数字是2个回文的总和。例如或。110=88+22110=88+22110=88+222380 = 939 + 14412380=939+14412380=939+1441 对于其他数字,仅两个回文是不够的。例如,不能将21写成2个回文的总和,而您能做的最好的就是。21 = 11 + 9 + 121=11+9+1个21=11+9+1 编写一个函数或程序,该函数或程序采用整数输入n并输出n不能分解为2个回文之和的th数。这对应于OEIS A035137。 一位数字(包括0)是回文。 序列的标准规则适用: 输入/输出灵活 您可以使用0或1索引 您可以输出n第一n项或第一项,或无限序列 (作为旁注:所有整数都可以分解为最多三个回文的总和。) 测试用例(1索引): 1 -> 21 2 -> 32 10 -> 1031 16 -> 1061 40 -> 1103 这是代码高尔夫球,因此最短的答案为准。

25
打印顺序
21、21、23、20、5、25、31、24 、? 受此拼图的启发,给定n > 0ñ>0n>0的整数,请打印出以下顺序,直到达到非整数为止(如果您想先自己解决难题,则提示错误) 一种0= n一种0=ña_0 = n 一种4 k +1=一个4千⋅ (4 ķ + 1 )一种4ķ+1个=一种4ķ⋅(4ķ+1个)a_{4k+1} = a_{4k} \cdot(4k+1) 一种4 k + 2= 一个4 k + 1+ (4 k + 2 )一种4ķ+2=一种4ķ+1个+(4ķ+2)a_{4k+2} = a_{4k+1} + (4k+2) 一种4 k + 3= 一个4 k + 2− (4 k + 3 )一种4ķ+3=一种4ķ+2-(4ķ+3)a_{4k+3} …

25
新邻居序列
非负整数总是无聊的拥有两个相同的邻居,所以他们决定将它们混为一谈。但是,他们也很懒惰,想尽可能地靠近自己的原始位置。 他们提出了以下算法: 第一个元素是0。 所述nthnthn^{th}元件是尚不存在于序列中,并且不是的邻居的最小数目元件。(n−1)th(n−1)th(n-1)^{th} 这将生成以下无限序列: 0,2,4,1,3,5,7,9,6,8,10,12,14,11,13,15,17,19,16,18,20,22,24,21,23,25,27,29,26,28 ... 0是第一个元素。1是尚未在序列中的最小数字,但它是的邻居0。下一个最小的数字是2,因此它是序列的第二个元素。现在剩下的数字是1,3,4,5,6,...,但作为1和3的邻居2,4是序列的第三个成员。由于1不是的邻居4,它最终可以代替第四元素。 任务 编写尽可能少的字节的函数或程序,以生成上述序列。 你可以 无限输出序列 输入并返回序列的元素,或者nnnnthnthn^{th} 接受输入并返回序列的前元素。nnnnnn 如果选择后两个选项之一,则零索引或一索引都可以。 您不需要遵循上面给出的算法,任何产生相同序列的方法都可以。 灵感来自Code golf的最佳排列。原来这是A277618。 *零实际上只有一个邻居,并不在乎。

17
整数按其数字根排序
正整数的数字根(也是重复的数字和)是在每次迭代中使用前一次迭代的结果来计算数字总和的,通过对数字求和的迭代过程获得的(单个数字)值。该过程一直持续到达到一位数字为止。 例如,65536的数字根为7,因为6 + 5 + 5 + 3 + 6 = 25和2 + 5 = 7。 对所有数字根进行排序没有多大意义,因为它只会以无限多个1 s开始。 取而代之的是,我们将创建所有单个数字整数及其数字根的列表,然后是所有两位数字及其数字根的列表,然后是三倍,四倍等等。 现在,对于这些列表中的每一个,我们将对其进行排序,以使所有数字根为1的整数首先出现,然后所有数字根为2的整数出现,依此类推。排序将是稳定的,因此具有一定数字根的整数列表在排序后应按升序排列。 最后,我们将这些列表连接成一个序列。此序列将从所有个位数开始,然后是所有两位数(按其数字根排序),然后是所有三位数,依此类推。 挑战: 以一个正整数n作为输入,并按上述顺序输出第n个数字。您可以选择列表是0索引还是1索引。 该序列如下所示: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 19, 28, 37, 46, 55, 64, 73, 82, 91, 11, 20, 29 ... 72, 81, 90, …

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.