沒錯就是這道模板題我做了乙個小時...我居然在看第一眼就認為是快速冪的情況下強行找了一發瞬時求出的規律
每個階段有黑白兩種 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#include#include#include#includeusing namespace std;#define mod 1000000007
long long int a[2];
long long int b[2][2];
void init()
void cheng()
void ch()
z[i][k]%=mod;}}
for(int i=0;i<2;i++)
for(int k=0;k<2;k++)
return ;
}void cal(long long int n)
else if(n%2!=0)
}long long n;
int main()
}
hrbust 1430 矩陣快速冪
第一次接觸矩陣快速冪 懂了大題的思想 矩陣推理的時候有點問題 這題是我們求出 向上三角行的個數 套用學長的圖 序號向上的三角形個數 向下的三角形個數01 0131 21063 3628 不難觀察出規律 規律如下 遞推公式 向上的三角 shang i 3 shang i 1 xia i 1 向下的三角...
快速冪(矩陣快速冪)
求 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 ...