class Solution { public: int Fibonacci(int n) { if(n == 0) return 0; vector<vector<int>> power{{1, 1}, {1, 0}}; //用于记录当前快速幂 vector<vector<int>> result{{1, 0}, {0, 1}}; //用于记录最终结果 while(n > 0) { // if(n & 1) matrixProduct(result, power); //将n视为二进制取最后一比特,若为1则将对应快速幂乘到结果上 ...