Problem
【JLOI2015】有意义的字符串
Description
有两个好朋友,他们叫宁宁和冉冉。
有一天,冉冉遇到了一个有趣的题目:输入,求
Input
一行三个整数。
Output
Sample Input
1 | 1 5 9 |
Sample Output
1 | 76 |
Hint
,,,。
标签:线性齐次递推
Solution
回忆二阶线性齐次递推的通项形式。
对于线性递推,其特征方程为,设其两根为。则通项的形式为,其中为可根据特解计算的待定系数。
可以构造一个序列,使得其通项为,那么其特征方程的两根为。于是可以还原其递推式,得到
由于,可知,为整数。可以构造转移矩阵,用矩阵快速幂计算。
接下来考虑如何根据计算答案。
由,可知。于是当时,,有;否则,有。
综上,在矩阵快速幂后根据的奇偶性调整答案即可。
Code
1 |
|