引自:《信息学奥赛之-数学一本通》
揍是这样:
F
(
n
)
=
5
5
⋅
[
(
1
+
5
)
n
−
(
1
−
5
)
n
]
\operatorname{F}(n)=\dfrac{\sqrt{5}}{5}\cdot\left[\left(1+\sqrt{5}\right)^n-\left(1-\sqrt{5}\right)^n\right]
F(n)=55⋅[(1+5)n−(1−5)n]
代码揍这么简单:
int ferbo(int n){
return (sqrt(5)/5)*(pow((1+sqrt(5))/2,n)-pow((1-sqrt(5))/2,n));
}
要是再加个快速幂就更棒了(够快了,懒得写)