n位不含前导零不含连续1的数共有fib(n)个,fib(n)为斐波那契数列。所以可以预处理一下fib的前缀和,查找一下第n个数是k位数,然后再递归计算它是第k位数里的多少位。举个例子,比如说要找第11个数,发现它是个5位数,所以最高位是个1,然后它还是5位数里的第4个数。这时要找第三个数了,因为后面...
分类:
其他好文 时间:
2015-03-28 14:12:18
阅读次数:
111
4.6. Defining FunctionsWe can create a function that writes the Fibonacci series to an arbitrary boundary:我们创建一个斐波那契数列的函数:>>> def fib(n): # write F...
分类:
编程语言 时间:
2015-03-14 21:40:04
阅读次数:
586
MF( i ) = a ^ fib( i-1 ) * b ^ fib ( i ) ( i>=3)
mod 1000000007
是质数 , 根据费马小定理 a^phi( p ) = 1 ( mod p ) 这里 p 为质数 且 a 比 p小 所以 a^( p - 1 ) = 1 ( mod p )
所以对很大的指数可以化简 a ^ k % p == a ^ ( k %(p-1) ...
分类:
其他好文 时间:
2015-03-13 00:24:07
阅读次数:
271
首先要知道一个姿势,对于Fib数列这类的东西,只要取余就一定会出现循环节。所以上来就直接暴力打表找规律就好了。
MOD = 1000000007 发现循环节是 222222224。
MOD = 2222222227 发现循环节是 183120
然后这个问题就解决了。
不要问我为啥会出现循环节,我也不会证明。。。
#include
#include
#include
#include...
分类:
其他好文 时间:
2015-03-11 19:49:38
阅读次数:
269
题目:印度蜜蜂,每年每只雄蜂产下一只雌蜂和一只雄蜂,每只雌蜂产下一只雄蜂,然后就死去;
现在发现了一只不会死的雌蜂,问以她为起始点,第N年有多少雄蜂和一共多少蜜蜂。
分析:dp,FIb数列类似物。
设第k年的雄蜂和雌蜂分别为m(k)与f(k),则有如下递推关系:
① f(k)= m(k-1)+ 1;(只有雄蜂会产下雌蜂...
分类:
其他好文 时间:
2015-03-10 21:35:00
阅读次数:
172
接着昨天的文章,再示范一个稍微复杂一点的尾递归tail recursion例子:计算第n个Fibonacci数。Fibonacci数第一、第二个数值分别是0,1,按顺序后面的数值是前面两个数的加合。例如:0,1,1,2,3,5... 1 def fib(n: Int): Int = { 2 ...
分类:
其他好文 时间:
2015-03-09 14:22:11
阅读次数:
93
1: 12:1+(1+1)3:1+2+(2+3)4:1+2+5+(5+8)而斐波那契数列1 1 2 3 5 8……因此推出a[n]=a[n-1]+fib[2*i-1]+fib[2*1-2];java代码import java.util.*;import java.math.*;public clas...
分类:
编程语言 时间:
2015-03-08 22:52:36
阅读次数:
211
把以前网络课的最长前缀匹配的作业重新写了下。简单说一下,输入输出要求如下,详细要求可见课程页面:https://kattis.csc.kth.se/problem?id=forwarding21.路由表以fib 格式给出,以换行符结束2.报文以input 红色为以太报文头,蓝色为目的ip地址Sa.....
分类:
其他好文 时间:
2015-03-08 18:35:37
阅读次数:
367
def fib(n): a,b=0,1 while a<n: print(a,end=" ") a,b=b,a+b print() fib(2000) 输出:0 1 1 2 3 5 8 13 21 34 55 89 144 233...
分类:
编程语言 时间:
2015-03-05 12:21:37
阅读次数:
138
范例:// 主模板templatestruct Fib{ enum { Result = Fib::Result + Fib::Result };};// 完全特化版template struct Fib{ enum { Result = 1 };};// 完全特化版template s...
分类:
编程语言 时间:
2015-02-27 13:27:26
阅读次数:
154