矩陣連乘 快速冪矩陣

2021-10-08 19:56:00 字數 1056 閱讀 9531

在類斐波那契數列問題中,我們常常需要運用構造乙個矩陣連乘的方法來求解。

而在矩陣連乘中我們需要用到乙個最基本的模板,快速冪矩陣

與整數快速冪(整數快速冪傳送門)相似,矩陣的快速冪也是用到不斷減少冪的大小來實現

洛谷p3390

/*

* @description:

* @autor: kadia

* @date: 2020-08-03 12:07:27

* @lasteditors: kadia

* @lastedittime: 2020-08-03 21:38:52

*/#include

#define inf 0x3f3f3f3f

typedef

long

long ll;

using

namespace std;

const

int mod=

1000000007

;ll power

(ll x,

int y,

int mod)

return ans%mod;

}ll power

(ll x,

int y)

return ans;

}typedef

struct _matrix

matrix;

ll n,k;

matrix ans;

matrix matrixmul

(matrix a,matrix b)}}

return c;

}matrix matrixpower

(matrix a,ll k)

return ans;

}int

main()

}matrixpower

(a,k)

;for

(int i=

1;i<=n;i++

) cout << endl ;

}return0;

}

快速冪,矩陣乘法,矩陣快速冪

快速冪利用二進位制 複雜度 log級 include include include include using namespace std typedef long long ll typedef unsigned long long ull int q power int a,int b,int...

快速冪(矩陣快速冪)

求 3 0 3 1 3 n mod 1000000007 input 輸入乙個數n 0 n 10 9 output 輸出 計算結果 sample input 3sample output 40 分析 利用等比數列的求和公式得所求和是 3 n 1 1 2,如果暴力求3 n 1 會超時,這裡引入快速冪來...

快速冪 矩陣快速冪

快速冪 正常情況下求乙個數的冪時間複雜度為o n 而快速冪能把時間複雜度降到o logn 舉個例子 求5的13次方 思想首先把13化為二進位制 1101,即13 1101 8 1 4 1 2 0 1 1 即5 13 58 1 54 1 52 0 5 1 15 5 8 1 5 4 1 5 2 0 5 ...