题目大意 输入a, b, n, 计算f( a ^ b) % n , f( i ) = f( i - 1) + f( i - 2 ) , f( 0 ) = f(1) = 1, 其中,0 <= a , b <= 2 ^ 64, 0 <= n <= 1000 思考 首先扔出两个结论(证明过程链接在此,个人 ...
分类:
其他好文 时间:
2017-06-30 14:09:22
阅读次数:
113
(一)通项公式 (二)递归 递归是最慢的,它会发生重复计算,时间复杂度成指数级。 但是通过记忆化搜索,能够将其复杂度降低为O(n) 代码如下: (三)循环 利用临时变量来保存中间的计算过程,能够加快运算。 (四)矩阵乘法+空间换时间(减少乘法,取模运算) 数列的递推公式为:f(1)=1,f(2)=2 ...
分类:
其他好文 时间:
2017-06-28 21:44:51
阅读次数:
252
//递归解法 function fib(n){ if(n < 1){ throw new Error('invalid arguments'); } if(n == 1 || n == 2){ return 1; } return fib(n - 1) + fib(n - 2); } //非递归解法... ...
分类:
其他好文 时间:
2017-06-26 23:57:44
阅读次数:
337
defbona():
whileTrue:
n=(input(‘你想打印几个数的斐波那契数列:‘))
ifnotn.isdigit():
exit()
a,b,m=0,1,0
n=int(n)
A=‘‘
whilem<n:
a,b=b,a+b
m+=1
A=‘‘‘%s%s‘‘‘%(A,str(a))
else:
print(A)
bona()
分类:
其他好文 时间:
2017-06-26 22:31:30
阅读次数:
146
题意:已知F0=a,F1=b,Fn=Fn-1*Fn-2,给你a,b,n求Fn%1000000007的值 思路:我们试着写几组数 F0=a F1=b F2=a*b F3=a*b2 F4=a2*b3 F5=a3*b5 我们发现a,b的系数其实是斐波那契数列,我们只需用矩阵快速幂求出相应系数就行,但是 这 ...
分类:
其他好文 时间:
2017-06-25 21:25:44
阅读次数:
177
def fibs(num): result=[0,1] for i in range(num-2): result.append(result[-2]+result[-1]) return resultprint fibs(9) ...
分类:
编程语言 时间:
2017-06-25 16:13:50
阅读次数:
197
二次联通门 : luogu P1962 斐波那契数列 /* luogu P1962 斐波那契数列 矩阵快速幂求feibonacii 矩阵为 1 1 1 0 做N - 2次方就好 */ #include <cstdio> #define Mod 1000000007 #define Max 2 voi ...
分类:
其他好文 时间:
2017-06-21 22:04:40
阅读次数:
149
今天面试遇到一个斐波那契数列的求法 1 1 2 3 5 8 13 ... 要求写出算法 ...
分类:
Web程序 时间:
2017-06-21 19:49:13
阅读次数:
154