for循环实现Fibonacci数列】的更多相关文章

Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n. 输出格式 输出一行,包含一个整数,表示Fn除以10007的余数. 说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单. 样例输入 10 样例输出 55 样例输入 22…
入门训练 Fibonacci数列 时间限制:1.0s   内存限制:256.0MB     问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1. 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少. 输入格式 输入包含一个整数n. 输出格式 输出一行,包含一个整数,表示Fn除以10007的余数. 说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以100…
第 19 题(数组.递归):题目:定义 Fibonacci 数列如下:/ 0 n=0f(n)= 1 n=1/ f(n-1)+f(n-2) n=2输入 n,用最快的方法求该数列的第 n 项. 思路:递归和非递归的 下面的代码有个问题,没有考虑大数越界.返回值应该设成long long型的 递归速度非常慢 /* 第 19 题(数组.递归): 题目:定义 Fibonacci 数列如下: / 0 n=0 f(n)= 1 n=1 / f(n-1)+f(n-2) n=2 输入 n,用最快的方法求该数列的第…
作者:何海涛 出处:http://zhedahht.blog.163.com/ 题目:定义Fibonacci数列如下: /  0                      n=0 f(n)=      1                      n=1         \  f(n-1)+f(n-2)          n=2 输入n,用最快的方法求该数列的第n项. 分析:在很多C语言教科书中讲到递归函数的时候,都会用Fibonacci作为例子.因此很多程序员对这道题的递归解法非常熟悉,看到题…
前段时间老师在讲函数调用的时候,用Fibonacci数列来演示了一下,因为以前没怎么接触过Fibonacci,所以当时很懵. 当时让求的是Fibonacci数列中,第N位值为多少,当时老师写的是: 之后呢,老师留的做作业是:求Fibonacci数列前N位的和,晚上自习的时候在想,求和的话必须需要用For循环,懵懵懂懂的写下了以下代码: public class Fibonacci{ public static void main(String[] args){ ; //声明一个int类型的变量i…
题目:定义Fibonacci数列例如以下: /    0                      n=0 f(n)=      1                      n=1         \    f(n-1)+f(n-2)          n=2 输入n,用最快的方法求该数列的第n项. 分析:刚看到这道题的时候,还以为怎么会有这么简单,汗,原来理所当然的使用的递归,时间复杂度太大,看看以下这段递归代码. public static int fun(int n){ if(n==0)…
NO.1 迭代法 标签:通俗.易懂 思路:先打印第一项.再在循环里面执行fib=fib1+fib2,把fib2赋给fib1,把fib赋给fib2,每行5个可使用if函数(循环次数对5取余). #include <stdio.h> main() { long fib1=0,fib2=1,fib=1; int i; printf("%ld\t",fib); for(i=2;i<=20;i++) { fib=fib1+fib2; printf("%ld\t&quo…
Fibonacci数列的解法: 1.递归算法 递归的概念,我说不清楚,语文不好.但是核心思想,我认为就是入栈出栈.比方说,你想要求得某个结果,如果一步求解不出来,那么先把最后一步的计算步骤进栈,先不考虑   它.转而去想,在求解最后一步之前的那一步应该怎么去做,就好比冬天穿衣服,再最后一步穿羽绒服之前我想大部分人会先穿一个羊毛衫(要是较真的话,内衣你应该会穿的吧).这样,我们先把羽绒服放在一边(进栈),先去准备穿羊毛衫.然后,我们又发现在穿羊毛衫之前,我得穿个保暖内衣啊.好,我们再将羊毛衫先放一…
未完待续~ 了解fibonacci数列: 斐波纳契数列(Fibonacci Sequence),又称黄金分割数列. 1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765……(1)fibonacci数列即斐波那契数列,它的特点是前面两个数的和等于后面的一个数,fib(0)=fib(1)=1.(2)斐波那契数列只有一个. (3)如果设F(n)为该数列的第n项(n∈N+).那么这句话可以写成如下形式: F(1)=F(2)=…
前言略. 看到这个题目本来应该很高兴的,因为什么,因为太TM的基础了啊! 可是当你用常规方法尝试提交OJ时你会发现..hhh...运行超时..(开心地摇起了呆毛 //Fibonacci数列递归一般问题常规方法(当目标序列号<32时适用 评判标准:运行时间<1.00s) #include <iostream> using namespace std; long Fib(int); int main() { ; cin >> n; cout << Fib(n)…