第一次接觸矩陣快速冪
懂了大題的思想
矩陣推理的時候有點問題
這題是我們求出
向上三角行的個數
套用學長的圖
序號向上的三角形個數
向下的三角形個數01
0131
21063
3628
不難觀察出規律 ,規律如下
.遞推公式
向上的三角
shang[i]=3*shang[i-1]+xia[i-1]
向下的三角
xia[i]=3*xia[i-1]+shang[i-1];
遞推出規律
然後我們就可以知道了
我們需要的矩陣是 31
13神秘植物
time limit: 1000 ms
memory limit: 65536 k
total submit: 89(41 users)
total accepted: 40(34 users)
rating:
special judge: no
description
leyni
有一種神秘的植物,形狀是一種「向上」三角形植物,每過一年,每個「向上」三角形植物會變成三個「向上」三角形植物和乙個「向下」三角形植物,每個「向下」三角形植物會變成三個「向下」三角形植物和乙個「向上」三角形植物。如下圖:
想知道經過
n年有多少個「向上」三角形植物。
input
輸入包含多組測試資料。
對於每組測試資料: 第1
行,包含乙個整數
n(0 ≤
n≤ 1018)
處理到檔案結束
output
對於每組測試資料: 第1
行,輸出
leyni
擁有多少個「向上」三角形植物。
(mod 1000000007)
sample input1 2
sample output
3 10
author
齊達拉圖@hrbust
剩下的就是套**了
#include
#define mod 1000000007
#define ll long long
struct nana
h,l;
nana juzhen(nana a,nana b)}}
return temp;
}ll zzz(ll n)
}l.m[0][0]=3;
l.m[0][1]=1;
l.m[1][0]=1;
l.m[1][1]=3;
while(n)
return h.m[0][0];
}int main()
}
HRBUST 1430 矩陣快速冪
沒錯就是這道模板題我做了乙個小時.我居然在看第一眼就認為是快速冪的情況下強行找了一發瞬時求出的規律 每個階段有黑白兩種 a i black a i 1 black 3 a i white a i white a i 1 black a i 1 white 3 求每個階段的black include ...
快速冪(矩陣快速冪)
求 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 ...