P3390 【模板】矩陣快速冪
題目背景
矩陣快速冪
題目描述
給定n*n的矩陣A,求A^k
輸入輸出格式
輸入格式:
第一行,n,k
第2至n+1行,每行n個數,第i+1行第j個數表示矩陣第i行第j列的元素
輸出格式:
輸出A^k
共n行,每行n個數,第i行第j個數表示矩陣第i行第j列的元素,每個元素模10^9+7
輸入輸出樣例
輸入樣例#1:2 1 1 1 1 1輸出樣例#1:
1 1 1 1
說明
n<=100, k<=10^12, |矩陣元素|<=1000 算法:矩陣快速冪
如題,矩陣快速冪。
已知,矩陣乘法:
第一個矩陣:
5 6 7
8 9 4
第二個矩陣:
2 3 7
2 4 8
8 3 6
相乘得:
5*2+6*2+7*8 5*3+6*4+7*3 5*7+6*8+7*6
8*2+9*2+4*8 8*3+9*4+4*3 8*7+9*8+4*6
即:
78 60 125
36 72 152
再利用快速冪可得答案。
P3390 【模板】矩陣快速冪
相關推薦
P3390 【模板】矩陣快速冪
說明 快速冪 給定 元素 答案 利用 class 題目 乘法 題目背景 矩陣快速冪 題目描述 給定n*n的矩陣A,求A^k 輸入輸出格式 輸入格式: 第一行,n,k 第2至n+1行,每行n個數,第i+1行第j個數表示矩陣第i行第j列的元素 輸出格式: 輸出A^
洛谷 P3390 【模板】矩陣快速冪
算法 ons int void printf cst getchar show 輸出格式 題目背景 矩陣快速冪 題目描述 給定n*n的矩陣A,求A^k 輸入輸出格式 輸入格式: 第一行,n,k 第2至n+1行,每行n個數,第i+1行第j個數表示矩陣第i行
[luogu P3390] 【模板】矩陣快速冪
題目 https://www.luogu.org/problemnew/show/P3390#sub 解題思路 這道題就是矩陣乘法的模板題,注意一下 f
模板【洛谷P3390】 【模板】矩陣快速冪
i++ pac get lld getchar () lin line its P3390 【模板】矩陣快速冪 題目描述 給定n*n的矩陣A,求A^k 矩陣A的大小為n×m,B的大小為n×k,設C=A×B 則C_{i,j}=\sum\limits_{k=1}^{n}A_{i
【模板】矩陣快速冪
oid -c algorithm adg col emc print cstring -o 題目背景 矩陣快速冪 題目描述 給定n*n的矩陣A,求A^k 輸入輸出格式 輸入格式: 第一行,n,k 第2至n+1行,每行n個數,第i+1行第j個數表示矩陣第i行第j列的元素
luogu3390 【模板】矩陣快速冪
tdi ret operator turn clu names his == 等於 #include <iostream> #include <cstdio> using namespace std; typedef long long ll; ll
LuoguP3390|【模板】矩陣快速冪|板子
目錄 快速冪 板子 矩陣快速冪 Problem 板子 快速冪 板子 long long qpow(long long a,long long b){ long long ans=1,base=a; while(b){
【模板】(新)快速冪+快速乘
老版快速冪 感覺以前寫的這篇太渣了 貼一個新的 inline ll pow(ll a , ll b , ll p){ ll ans = 1; while(b)
洛谷 P1939 【模板】矩陣加速(數列)——————矩陣快速冪(水題)
P1939 【模板】矩陣加速(數列) 題目描述 a[1]=a[2]=a[3]=1 a[x]=a[x-3]+a[x-1] (x>3) 求a數列的第n項對1000000007(10^9+7)取餘的值。 輸入輸出格式 輸入格式: 第一行一個整數T,表示詢問個數。
洛谷 P1939 【模板】矩陣加速(數列):優化遞推式的方法——矩陣快速冪
在大多數情況下,O(n)的效率都是值得驕傲的,然而,有時候並不是,比如如何在一秒鐘內算出一個遞推式的第1e9項,很明顯O(n)不行了。 然而常數級又不太現實,除非你的數學非常好,這題又比較簡單,你推了一個特徵方程的通項公式…… 所以考慮log的做法:矩陣快速冪 如果你還不知
【出錯記錄】矩陣快速冪
mil bsp 出錯 記錄 tro 忘記 初始 gpo span 矩陣快速冪。 ①忘記給矩陣初始化(例子:2017.10.27 T1 坐標系)。 ②忘記在運算過程中%(例子:同上)。 【出錯記錄】矩陣快速冪
【洛谷P1962 斐波那契數列】矩陣快速冪+數學推導
公式 lin esp inline i++ out cin def res 來提供兩個正確的做法: 斐波那契數列雙倍項的做法(附加證明) 矩陣快速冪 一、雙倍項做法 在偶然之中,在百度中翻到了有關於斐波那契數列的詞條(傳送門),那麽我們可以發現一個這個規律$ \fra
【概率DP+矩陣快速冪】 POJ - 3744 Scout YYF I
Scout YYF I POJ - 3744 YYF is a couragous scout. Now he is on a dangerous mission which is to penetrate into the enemy's base. Afte
【AC自動機+矩陣快速冪】POJ - 2778 - DNA Sequence & HDU - 2243 - 考研路茫茫——單詞情結
POJ - 2778 - DNA Sequence 題目連結<http://poj.org/problem?id=2778> 題意: DNA序列只包含ACTG四個字元,已知一些病毒的DNA序列,問你序列長度為n(1 <= n <=2000000000)且不
Codeforces 450B f【n】=f【n-1】-f【n-2】(矩陣快速冪,裸題)
Jzzhu has invented a kind of sequences, they meet the following property: You are given x and
HDU 6198 number number number【找規律+矩陣快速冪】
題目連結 題意:從含0的斐波那契數列中可重複的任取K個數,求這K個數的和無法形成的最小整數。 寫了幾個之後大膽的猜測i的答案是F[2∗(i+1)+1]−1… 於是矩陣快速冪…… #includ
【遞推+矩陣快速冪】【HDU2604】【Queuing】
Queuing Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 3032 Accepted Subm
POJ 2778 DNA Sequence【AC自動機+矩陣快速冪】
題意:給m個病毒字串,問長度為n的DNA片段有多少種沒有包含病毒串的。 首先解決這個問題:給定一個有向圖,問從A點恰好走k步(允許重複經過邊)到達B點的方案數mod p的值 把給定的圖轉為鄰接矩陣,即A(i,j)=1當且僅當存在一條邊i->j。令C=A*A,
【AC自動機+矩陣快速冪】 POJ 2778 DNA Sequence
先構建AC自動機,然後通過AC自動機構建矩陣,最後矩陣快速冪即可。。。 #include <iostream> #include <queue> #include <stack> #include <map>
【模板】矩陣加速(數列)
cst opera name 結果 ++ 取余 int 數列 names 題目描述 a[1]=a[2]=a[3]=1 a[x]=a[x-3]+a[x-1] (x>3) 求a數列的第n項對1000000007(10^9+7)取余的值。 輸入輸出格式 輸入格式: 第一行一