一、題目
定義
斐波那契數列(Fibonacci sequence),又稱黃金分割數列,因數學家萊昂納多·斐波那契(Leonardo Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……在數學上,斐波那契數列以如下被以遞推的方法定義:F(0)=1,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)
定義來源于百度百科:斐波那契數列
求100以內的斐波那契數列。
二、Python代碼
x=1
y=1
print(x,end="\n")
print(y,end="\n")
while True:z=x+yx=yy=zif (z>100):breakprint(z,end="\n")
運行結果:
三、洛谷P1720 月落烏啼算錢(斐波那契數列)
# 月落烏啼算錢(斐波那契數列)
## 題目背景
(本道題目木有隱藏歌曲……不用猜了……)
《愛與愁的故事第一彈·heartache》最終章。
吃完 pizza,月落烏啼知道超出自己的預算了。為了不在愛與愁大神面前獻丑,只好還是硬著頭皮去算錢……
## 題目描述
算完錢后,月落烏啼想著:“你坑我!”于是當愛與愁大神問多少錢時,月落烏啼說了一堆亂碼。愛與愁大神說:“算了算了,我只問第 $n$ 樣菜價格多少?”月落烏啼寫出了:
$$F_n=\dfrac{\left(\frac{1+\sqrt{5}}{2}\right)^n-\left(\frac{1-\sqrt{5}}{2}\right)^n}{\sqrt{5}}$$
由于愛與愁大神學過編程,于是就用 $1$ 分鐘的時間求出了 $F_n$ 的結果。月落烏啼為此大吃一驚。你能學學愛與愁大神求出 $F_n$ 的值嗎?
## 輸入格式
一行一個自然數 $n$。
## 輸出格式
只有 $1$ 行一個實數 $F_n$,保留兩位小數。
## 樣例 #1
### 樣例輸入 #1
```
6
```
### 樣例輸出 #1
```
8.00
```
## 提示
對于所有數據:$0 \leq n\leq 48$。
1.題目解析
fn就是第n個斐波那契數
2.Python代碼
方法一:
a = int(input())
d=[1,1]
i=1
x=1
y=1
while i<a:z=x+yx=yy=zi=i+1d.append(z)
s=d[a-1]
print("%.2f"%s)
評測結果:
有個不通過,不知道哪個大佬能看出來為什么
方法二:
import math
n = int(input())
t = math.sqrt(5)
a = (1+t)/2
b = (1-t)/2
f = (math.pow(a,n)-math.pow(b,n))/t
print("%.2f"%f)
評測結果: