Questions tagged «fibonacci»

挑战涉及斐波那契数或它们的概括之一。

12
找到斐波那契模式
您可能熟悉斐波那契数列,其中前两个项是0, 1(或有时是1, 1),其后的每个项都是前两个项的总和。它是这样开始的: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ... 有时,序列包含具有特殊图案的数字,我发现这很有趣:相邻数字对之间的差异与其他任何对相同。例如,在以开头的序列中0, 1,第18个项是987。9-8=1和8-7=1。我很满意。 挑战 给定两个初始值F(0)和F(1),输出由生成的序列F(n) = F(n-1) + F(n-2)中满足以下条件的每个数字: 任何一对相邻数字之间的差异与任何其他一对相同 至少三位数字长(此模式对1位和2位数字不感兴趣) 输入值 小于10 ** 10(100亿)的两个非负整数 输出量 所有小于10 ** 10且符合“挑战”部分中的条件的整数 输出大于10 ** 10的数字是可以接受的,但这不是必需的 假设重复的数字符合模式(例如777),则可能有无数个符合条件的数字,但您的程序不需要永远输出 如果不存在这样的整数,则输出任何您想要的东西,只要它不是数字即可(无,空,空数组,错误消息,悲伤的面孔等)。 如果与模式匹配的数字在序列中出现多次,则可以将其输出一次或多次 如果任何输入符合条件,则应将其包含在输出中 规则 输入和输出可以是任何标准格式 禁止出现标准漏洞 这是代码高尔夫球,因此以字节为单位的最短代码获胜 示例/测试用例 Input , Output [1,10] …

4
建立ASCII斐波那契时钟
有人使用斐波那契数字建立了一个非常漂亮的时钟,它看起来很不错,但是却无法使用。就是我们喜欢的方式!让我们重新创建它。 时钟由与前五个斐波那契数相对应的5个部分组成,从1(即1、1、2、3、5)开始: ccbeeeee ccaeeeee dddeeeee dddeeeee dddeeeee 时钟能够以5分钟为增量显示12小时时间。这是这样的。考虑时间7:20。可以将小时7分解为给定的斐波那契数 7 = 2 + 5 还有5分钟的4个单元。4可以分解为 4 = 2 + 1 + 1 现在,小时显示为红色,分钟显示为绿色,如果小时和分钟都使用数字,则显示为蓝色。如果根本不使用数字,它将保持白色。因此,上面将显示为: BBGRRRRR BBGRRRRR WWWRRRRR WWWRRRRR WWWRRRRR 但是,等等,还有更多。上述分解并不是唯一的可能性。一个人也可以写7 = 3 + 2 + 1 + 1和4 = 3 + 1,这将给 GGRWWWWW GGBWWWWW GGBWWWWW GGRWWWWW BBBWWWWW or BBBWWWWW BBBWWWWW BBBWWWWW BBBWWWWW …

3
对N-Bonacci序列进行逆向工程
编辑:我将在2016年2月15日星期一接受答案。愿字节永远对您有利! @DJMcGoathem 在他的“打印N-Bonacci序列”挑战中,描述了N-bonacci序列,其中之前的N个数字相加,而不是斐波纳契序列的传统2个(称为“ 双 nacci序列”)。然后,他要求输入两个输入X和N,然后输出第X个N -nacci数。 我提出相反的建议。 给定一个序列,输出它是N -nacci序列的子集。我之所以说“子集”,是因为: A)这些序列是无限的 B)如果给定序列的开始,则可以只计算前导1的数量 如果它可能属于多个N -nacci序列,请选择最低的序列。 如果它不属于任何N-nacci序列,则您的程序可能会执行其他操作,而不是打印可能会误输出的内容。这些行为包括(但不限于):无限循环,错误,崩溃,删除自身(*咳嗽* 保持警惕 *咳嗽*)或创建黑洞(只要该黑洞不会产生任何可能被误认为是有效输出)。 为了应对这一挑战,这些序列以1开头。这意味着任何N -nacci序列都以N开头。此外,N必须为正整数。所以没有-1 -nacci等 测试用例: 1,1,1 -> 1 49, 97 -> 7 55, 89, 144 -> 2 1 -> 1 6765 -> 2 12, 23, 45, 89 -> 12 100, 199 -> 100

5
二进制卷积
二进制卷积由数字描述M,并应用于数字N。对于的二进制表示形式中的每个位M,如果将该位设置为(1),则通过将与相应位中的相应位相邻的两个位进行XOR N(在必要时进行环绕)来给出输出中的相应位。如果未设置该位(0),则输出中的相应位由中的相应位给出N。 一个有效的示例(具有8位值): 让N = 150,M = 59。它们的二进制表示形式分别为10010110和00111011。 根据M的二进制表示形式,卷积0、1、3、4和5。 位0的结果由对位1和7进行XOR运算得出(因为我们进行了环绕),得出1。 位1的结果由位0和2的XOR运算得出0。 位2的结果由原始位2给出,即1。 第3位的结果由第2位和第4位的XOR运算得出0。 位4的结果由位3和5的XOR运算得出0。 第5位的结果由第4位和第6位的XOR运算得出1。 位6和7的结果由原始位6和7给出,得出0和1。 因此,输出为10100110(166)。 挑战 给定N和M,输出执行Mon上描述的二进制卷积的结果N。输入和输出可以采用任何方便,一致且明确的格式。N并且M将始终在(包括)范围内[0, 255](8位无符号整数),并且应将其二进制表示形式填充为8位以执行二进制卷积。 测试用例 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

10
Sequentia Filii Bonacci
比萨的莱昂纳多(约1175年-约1245年)以斐波那契闻名。但这实际上是18世纪(根据维基百科)组成的拉丁语“ filius Bonacci”(Bonacci的儿子)的缩写。)。 在此挑战中,您将获得一个介于1日和20日之间的序数(按字面意义),并且您必须返回斐波那契数列中的相应项。 所不同的是,序数将以拉丁文给出。 例如:“ duodecimus”→ 。898989 完整的I / O表 input | meaning | output --------------------+---------+-------- "primus" | 1st | 0 "secundus" | 2nd | 1 "tertius" | 3rd | 1 "quartus" | 4th | 2 "quintus" | 5th | 3 "sextus" | 6th | 5 "septimus" | 7th …

19
将我的斐波那契除数相加!
著名的斐波那契数列是F(0) = 0; F(1) = 1; F(N+1) = F(N) + F(N-1)(对于这个挑战,我们从0开始)。 您的挑战:由于ñ,输出所有的总和d个斐波那契数为所有除数Ð的的ñ个Fibonacci数。如果您希望使用更正式的符号, 输入:正整数n 输出:总和 例如,考虑n=4。F(4) = 33的除数是1和3,因此输出应为F(1) + F(3) = 1 + 2 = 3。 对于n=6,F(6) = 8和,8的除数是1,2,4,8,因此输出是F(1) + F(2) + F(4) + F(8) = 1 + 1 + 3 + 21 = 26。 测试用例: 1 => 1 2 => …

13
永久自修改代码
现在,我们都知道大多数语言都有非常简单的方法来“自我修改”代码。但是,如果要在磁盘上实际修改代码并编辑其中的一部分,该怎么办? 您的目标是制作打印数字的代码,然后编辑自己的文件,用斐波那契数列中的下一个替换该数字,如下所示: $ ./program 1 $ ./program 1 $ ./program 2 $ ./program 3 $ ./program 5 [etc...] 规则 您不能将代码存储在代码的“外部”。没有评论,没有告诉脚本退出,没有EOF等。 如果您的代码可以使用任何文件名,请从字节数中减去2并$BYTESNOW ($ORIGINALBYTES - 2)输入标题。(假定文件名在任何字母数字文件路径的范围内。) 您的代码必须自己将输出写入文件,而无需任何外部管道协助。 您的代码可以从一或零开始。没关系

7
斐波那契程序长度
编写一个长度为n的程序,该程序输出另一个程序,其长度为n之后的下一个斐波那契数。新程序必须做同样的事情-输出另一个程序,该程序的长度是下一个斐波那契数,以此类推 。n本身(原始程序的长度)不必是斐波那契数,尽管它可以是斐波那契数。 最短的代码获胜。 无需外部资源,仅ASCII,需要免费的编译器/解释器。 如果您的输出以换行符结尾,则也将对其进行计数。

8
Zeckendorf表示下的求和
Zeckendorf定理表明,每个正整数都可以唯一地表示为不相邻的斐波那契数之和。在此挑战中,您必须计算Zeckendorf表示形式中两个数字的和。 令F n为第n个斐波那契数,其中 F 1 = 1, F 2 = 2,并且 对于所有k > 2,F k = F k -1 + F k -2。 非负整数n的Zeckendorf表示 Z(n)是一组正整数,使得 Ñ =Σ 我 ∈Z(Ñ) ˚F 我 和 ∀ 我 ∈Z(Ñ) 我 + 1个∉Z(Ñ)。 (在prosa中:数字n的Zeckendorf表示是一组正整数,因此这些索引的斐波那契数之和为n,并且该集合中没有两个相邻的整数) 值得注意的是,Zeckendorf表示法是唯一的。以下是Zeckendorf表示形式的一些示例: Z(0)=∅(空集) Z(1)= {1} Z(2)= {2} Z(3)= {3}({1,2}不是3的Zeckendorf表示) Z (10)= {5,2} …

10
计数斐波纳契轨道
如果将类斐波那契数列定义为f k(n)=(f k(n-1)+ f k(n-2))%k,则对于某些整数k(其中%是模运算符),该序列因为(f k(n-1),f k(n-2))只有k 2个不同的值,所以它将必定是循环的。但是,此周期通常并不包括所有可能的值对,因此根据两个初始值f k(0)和f k(1),我们可能会得到不同的周期。例如,对于k = 2,根据前两个值,我们有以下四种可能性: 0, 0, 0, 0, 0, 0, 0, 0, 0, ... 0, 1, 1, 0, 1, 1, 0, 1, 1, ... 1, 0, 1, 1, 0, 1, 1, 0, 1, ... 1, 1, 0, 1, 1, 0, 1, 1, …

13
实施斐波那契喹
甲奎因是一个程序运行时,其输出其来源。 在这个挑战中,您应该制作一个斐波那契奎因(Fibonacci-quine),奎因的一种变体。 什么是斐波那契喹? Fibonacci-quine是一个程序,它通过以下规则输出对源的修改: 初始来源应为...2...。换句话说,来源应包含2。(为什么2?如果是1,没人会知道它是第一个还是第二个,甚至程序本身) 运行时,您应该输出源,但是只有特定数字(在此阶段为2)更改为斐波那契数列的下一个数字。例如,...3...。输出和输出等也一样。您最多可以支持2 ^ 32-1的整数。对于超出该限制的整数,可以选择下一个输出。 OP的笔记 我真的很想看到一个有创意的解决方案。我想不出一个单一的解决方案,因为挑战的两个重要方面,斐波那契和奎因,都不容易。那我等一下!

20
反斐波那契数列
给定三个数字m,n和p,您的任务是打印一个以m和n开头的长度为p的列表/数组,并且p后面的每个元素代表其前两个数字的差mn(反斐波那契数列) 对于此挑战,您可以使用函数来返回或打印结果或完整程序。 输入值 无论您的语言支持什么,三个整数m,n和p都由换行符/空格/逗号分隔,但是您应该指定输入格式。不允许插入代码。 输出量 反斐波那契数列包含的数字,采用以下任何一种格式(此示例:)m = 50, n = 40, p = 6: 50,40,10,30,-20,50 (或逗号后有空格) [50,40,10,30,-20,50] (或逗号后有空格) 50 40 10 30 -20 50(或使用\n(换行符)代替空格) {50,40,10,30,-20,50} (或用空格而不是逗号) 例子 Input => Output 50,40,10 => 50,40,10,30,-20,50,-70,120,-190,310 -100,-90,7 => -100,-90,-10,-80,70,-150,220 250,10,8 => 250,10,240,-230,470,-700,1170,-1870 规则 您可以确保p大于1 如果可能,您应该提供一种测试程序的方法 请注意,如上所述,此漏洞是禁止的,并且不允许插入代码 得分与排行榜 您的代码必须尽可能短,因为这是code-golf。没有答案将被接受,因为此挑战旨在通过语言找到最短的答案,从而避免了对高尔夫语言的不公平优势。 显示代码段 var QUESTION_ID=113051,OVERRIDE_USER=59487;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function …

13
斐波那契产品
您可以将大于0的数字分解为正Fibonacci数字的唯一和。在这个问题中,我们通过重复减去最大可能的正斐波那契数来做到这一点。例如: 1 = 1 2 = 2 3 = 3 4 = 3 + 1 12 = 8 + 3 + 1 13 = 13 100 = 89 + 8 + 3 现在,我将斐波那契乘积称为与上面相同的列表,但加法运算被乘积代替。例如,f(100) = 89 * 8 * 3 = 2136。 编写一个给定正整数n的程序或函数,该函数将返回该数字的斐波那契乘积。 测试用例: 1: 1 2: 2 3: 3 4: …
13 code-golf  math  sequence  fibonacci  code-golf  word  code-golf  cipher  code-golf  string  math  subsequence  code-golf  regular-expression  code-golf  brainfuck  assembly  machine-code  x86-family  code-golf  math  factorial  code-golf  math  geometry  code-golf  math  arithmetic  array-manipulation  math  number  optimization  stack  metagolf  code-golf  tips  assembly  code-golf  tips  lisp  code-golf  number-theory  path-finding  code-golf  number  sequence  generation  code-golf  math  geometry  code-golf  grid  permutations  code-golf  code-golf  graphical-output  geometry  fractal  knot-theory  code-golf  math  arithmetic  code-golf  interpreter  balanced-string  stack  brain-flak  code-golf  math  set-theory  code-golf  math  array-manipulation  code-golf  code-golf  string  natural-language  code-golf  code-golf  math  linear-algebra  matrix  code-golf  string  encode 

4
获取吸气剂
任务 我想每个人都喜欢自动代码生成并节省工作时间。您白天必须创建许多类和成员,而又不想getters手动创建所有这些类和成员。 任务是编写一个程序或函数,该程序或函数getters将为您自动为所有类成员生成。 输入 在我们的语言中,对象非常简单。类和成员的名称必须以字符开头,[a-zA-Z]并且只能包含字符[a-zA-Z0-9]。这是一个例子: class Stack { public overflow; protected trace; private errorReport; } 输出 这是基于给定示例的有效输出: class Stack { public overflow; protected trace; private errorReport; public function getOverflow() { return this->overflow; } public function getTrace() { return this->trace; } public function getErrorReport() { return this->errorReport; } } 吸气剂 getter方法的要求是: …
13 code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

3
Brainfuck中的按位运算符
您的任务是为以下每个二进制运算符创建一个Brainfuck程序。每个程序应从输入中获取一个或两个8位数字(A和B)并计算指定的运算: A XOR B A AND B A OR B A Shifted Left by 1 (circular shift) NOT A 您不必全部实施5。得分的计算方式为: #totalCharacters + {4000 * #problemsNotCompleted} 因此,有效分数是从零(最佳)到20,000(未完成)。 我不在乎您将结果存储在哪里,也不管您是否保留输入。假设8位单元以及仅在右侧需要的空单元数。 您可能会认为数字已经在最适合您的任何内存位置中,因此您无需担心IO操作。
13 code-golf  binary  brainfuck  code-golf  code-golf  ascii-art  random  code-golf  code-golf  code-challenge  sorting  code-golf  code-challenge  java  code-golf  statistics  code-golf  code-challenge  fastest-code  code-golf  math  code-golf  math  kolmogorov-complexity  code-golf  code-golf  array-manipulation  combinatorics  code-golf  kolmogorov-complexity  popularity-contest  underhanded  code-golf  math  floating-point  code-golf  interpreter  code-golf  music  code-golf  code-golf  cryptography  code-challenge  scrabble  code-golf  code-challenge  popularity-contest  quine  code-golf  quine  cryptography  code-golf  kolmogorov-complexity  code-golf  printable-ascii  code-golf  chess  code-golf  math  number-theory  code-challenge  c  code-golf  random  popularity-contest  hello-world  code-shuffleboard  code-golf  compression  grammars  code-golf  tips  code-golf  sequence  code-golf  string  code-challenge  sorting  permutations  code-golf  string  code-challenge  optimization  code-golf  interpreter  code-challenge  string  code-golf  math  number  fibonacci  string  compression  c#  code-golf  chemistry  popularity-contest  math  c  c++  java  code-golf  math  function  code-golf  complex-numbers  code-golf  geometry 

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.