超級臺階--斐波那契數列問題
描述
有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法?
注:規定從一級到一級有0種走法。
輸入
輸入資料首先包含一個整數n(1<=n<=100),表示測試例項的個數,然後是n行資料,每行包含一個整數m,(1<=m<=40), 表示樓梯的級數。
輸出
對於每個測試例項,請輸出不同走法的數量。
樣例輸入
2 2 3
樣例輸出
1 2
解:這個題就是斐波那契數列問題
程式碼如下:
#include<stdio.h> int main() { int n,m,i,a[50]; scanf("%d",&n); a[0]=0;a[1]=0;a[2]=1;a[3]=2; while(n--) { scanf("%d",&m); for(i=4;i<=m;i++) { a[i]=a[i-1]+a[i-2]; } printf("%d\n",a[m]); } return 0; }
相關推薦
超級臺階--斐波那契數列問題
描述 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少走法? 注:規定從一級到一級有0種走法。 輸入 輸入資料首先包含一個整數n(1<=n<=100),表示測試例項
跳臺階 -- “斐波那契數列” java
跳臺階 – “斐波那契數列” java 題目描述 一隻青蛙一次可以跳上1級臺階,也可以跳上2級。求該青蛙跳上一個n級的臺階總共有多少種跳法(先後次序不同算不同的結果)。 解析1:推薦 對於本題,前提只有 一次 1階或者2階的跳法。 a.如果兩種跳法,1階或者2階,
斐波那契數列及青蛙跳臺階問題
step popu mtd bmi article 復雜度 rec one pen 題目1: 寫一個函數,輸入n,求斐波那契(Fibonacci)數列的第n項。 斐波那契(Fibonacci)數列定義例如以下: f(n)=?????0,1,f(n
斐波那契數列與跳臺階問題以及變態跳臺階
說明 pub jump IE for 純粹 urn 因此 討論 1.跳臺階問題:(其實就是很純粹的斐波那契數列問題)比較傾向於找規律的解法,f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 5, 可以總結出f(n) = f(n-1) + f
劍指offer——(3)斐波那契數列&&跳臺階&&瘋狂跳臺階進階版&&矩形覆蓋
這兩道題 其實相同。 public class Solution { /* 一看到題目就想到用遞迴,結果雖然能通過,但時間還是太長 */ public int Fibonacci(int target) { return hhh(ta
斐波那契數列&青蛙跳臺階問題(劍指offer)
斐波那契數列 大家都知道斐波那契數列,現在要求輸入一個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0)。n<=39 (百度對斐波那契數列的定義) 斐波那契數列 指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……在數學上,斐波納契數列以如下被以遞推的方法定
【劍指offer{7-10}】斐波那契數列、跳臺階、變態跳臺階、矩形覆蓋
斐波那契數列、跳臺階、變態跳臺階、矩形覆蓋題目描述C++程式碼跳臺階題目描述C++程式碼變態跳臺階題目描述C++程式碼矩形覆蓋題目描述C++程式碼 注:思路均是動態規劃,用中間陣列dp存放計算值,如果
劍指offer--斐波那契數列-跳臺階-變態跳臺階-矩形覆蓋
題目描述 大家都知道斐波那契數列,現在要求輸入一個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0)。 n<=39 注: 自己最早是直接用一整個數列,將每一步的資料都儲存了下來,但是這是不必要的。因為只需要用到前兩步的資料,所以只需要用兩個變數將前兩步的資料儲存下來即可。
Python實現斐波那契數列與跳臺階變體
本篇記錄了斐波那契數列的Python實現:遞迴與迴圈兩種解法,以及一些化用的題目。 Python實現 遞迴 按傳統的遞迴方式,簡潔、優雅。寫出來卻是O(n2)O(n^2)O(n2)的演算法 def fibo(n): """肥波那契函式""" if n
JavaScript實現青蛙跳臺階問題(斐波那契數列)
問題一:一隻青蛙一次可以跳上一階臺階,也可以跳上二階臺階,請這隻可憐的青蛙跳上N階臺階有幾種方法?分析:當N=1時有一種跳法,當N=2時有兩種跳法,當N=3時有三種跳法,當N=4有五種跳法,當N=5時有八種跳法,當N=6時有十三種跳法....... 這個規律符合斐波那契數列:
題目4-7 斐波那契數列、跳臺階、矩形覆蓋
這些題目的做法都很類似,所以放在一起寫,都是同類型的遞推題。題目4、5、7遞推式其實都是斐波那契數列:f(n)=f(n-1)+f(n-2),其中的初值不同。題目6的遞推式為f(n)=f(n-1)+f(n-2)+...f(0),由些可得f(n - 1) = f(n - 2
[luoguP1962] 斐波那契數列(矩陣快速冪)
truct ons 技術 pan opera http 快速冪 printf ble 傳送門 解析詳見julao博客連接 http://worldframe.top/2017/05/10/清單-數學方法-——-矩陣/ —&
Java 兔子問題(斐波那契數列)擴展篇
aik 第一個 truct func main target htm bre trace Java 兔子問題(斐波那契數列)擴展篇 斐波那契數列指的是這樣一個數列 0, 1, 1, 2,3, 5, 8, 13, 21, 34, 55, 89, 144, ...對於這個
斐波那契數列算法
string () lis temp -1 代碼 需要 cci key 今天研究了下Fibonacci算法,實現了遞歸和非遞歸兩種方式得到指定第n個的值。 代碼如下: 遞歸方式: public static int getFib(int a){ i
hdu 4549 M斐波那契數列(矩陣高速冪,高速冪降冪)
else if stdlib.h article 1.0 ostream void 我們 memset font http://acm.hdu.edu.cn/showproblem.php?pid=4549 f[0] = a^1*b^0%p,f[1] = a^0*b
vijos - P1543極值問題(斐波那契數列 + 公式推導 + python)
找到 span add gin python3 abi pri n) fill P1543極值問題 Accepted 標簽:[顯示標簽] 背景 小銘的數學之旅2。 描寫敘述 已知m、n為整數,且滿足下列兩個條件: ①
通過“”斐波那契數列“”學習函數遞歸
range else ret bsp 方法 res ... fbi 結果 斐波那契數列: f(0) = 0 f(1) = 1 f(2) = 1 f(3) = 2 f(4) = 3 f(5) = 8 .......f(n) = f(n - 2) + f(n - 1
[luoguP2626] 斐波那契數列(升級版)(模擬)
sub std [1] 斐波那契數 == cnblogs () ios git 傳送門 模擬 代碼 #include <cmath> #include <cstdio> #include <iostream>
斐波那契數列
python 練習 def bona(): while True: n = (input(‘你想打印幾個數的斐波那契數列:‘)) if not n.isdigit(): exit() a,b,m = 0,1,0
斐波那契數列的遞歸和非遞歸解法
err nbsp div clas pan 斐波那契 ret ror ++ //遞歸解法 function fib(n){ if(n < 1){ throw new Error(‘invalid arguments‘); }