
题意
给出$x0,x1,a,b$, $x_i = a\cdot x_{i-1} + b\cdot x_{i-2}$,问$x_n取模mod$
题解
用十进制快速幂,二进制快速幂是每到下一位就把a平方,十进制快速幂就是每到下一位就把a变成$a^{10}$,乘10次方的过程再用二进制快速幂优化,总体复杂度就是$O(\log_{10}{n}\cdot \log_2{10})$
代码
1 |
|

给出$x0,x1,a,b$, $x_i = a\cdot x_{i-1} + b\cdot x_{i-2}$,问$x_n取模mod$
用十进制快速幂,二进制快速幂是每到下一位就把a平方,十进制快速幂就是每到下一位就把a变成$a^{10}$,乘10次方的过程再用二进制快速幂优化,总体复杂度就是$O(\log_{10}{n}\cdot \log_2{10})$
1 | #include <bits/stdc++.h> |