题目描述
考虑以下定义在非负整数 n 上的递归关系:
$F(n)=\begin{cases}f_0,& n=0\\f_1,&n=1\\a\times F(n-1)+b\times F(n-2),& otherwise\end{cases}$
其中 a、b 是满足以下两个条件的常数:
- a2+4b>0
- ∣a−a2+4b∣≤2
给定 f0,f1,a,b 和 n,请你写一个程序计算 F(n),可以假定 F(n) 是绝对值不超过 109 的整数(四舍五入)。
输入格式
输入文件一行依次给出 5 个数 f0,f1,a,b 和 n,f0,f1 是绝对值不超过 109,n 是非负整数,不超过 109。另外, a,b 是满足上述条件的实数,且 ∣a∣,∣b∣≤106。
输出格式
输出一行一个数,即 F(n)。
0 1 1 1 20
0 1-1 0 1000000000
-1 1 4 -3 18
6765
-1
387420487
提示
F(n)=k−mkn(f1−mf0)−mn(f1−kf0)
其中:m,k=2a±a2+4b
数据范围
- 0<n≤109
- ∣f0,f1∣≤109
- a,b 为实数,且 ∣a,b∣≤106