hdu6470 Count 矩陣快速冪

2021-09-13 01:57:06 字數 947 閱讀 1277

奶牛的編號規則:當前奶牛是第n頭,那麼他的編號就是2倍的第n-2頭奶牛的編號加上第n-1頭奶牛的編號再加上自己當前的n的三次方為自己的編號.

第一頭奶牛為1號,第二頭奶牛為2號

第n頭奶牛的編號是多少, 答案模123456789

題解:給你公式 

很明顯這是一道矩陣快速冪的題目

f(n) = f(n-1) + f(n-2) + n^3

(n+1)^3 = n^3 + 3*n^2 +3*n + 1

推出的矩陣為

algorithm: 矩陣快速冪

author: anthony1314

creat time:

time complexity:

*/#include#include#include#include#include#include#include#include//#include#define ll long long

#define maxn 1005

#define mod 123456789ll

#define line printf("--------------");

using namespace std;

struct node

} void initall()

};node mul(node aa, node bb)

} }return ans;

}node quickpownode(node aa, ll n)

aa = mul(aa, aa);

n/=2;

} return ans;

}int main()

return 0;

}

Count(矩陣快速冪)

學習矩陣快速冪可以看這篇部落格 矩陣快速冪高階 description farmer john有n頭奶牛.某天奶牛想要數一數有多少頭奶牛,以一種特殊的方式 第一頭奶牛為1號,第二頭奶牛為2號,第三頭奶牛之後,假如當前奶牛是第n頭,那麼他的編號就是2倍的第n 2頭奶牛的編號加上第n 1頭奶牛的編號再加...

Count(矩陣快速冪)

farmer john有n頭奶牛.某天奶牛想要數一數有多少頭奶牛,以一種特殊的方式 第一頭奶牛為1號,第二頭奶牛為2號,第三頭奶牛之後,假如當前奶牛是第n頭,那麼他的編號就是2倍的第n 2頭奶牛的編號加上第n 1頭奶牛的編號再加上自己當前的n的三次方為自己的編號.現在farmer john想知道,第...

count (類插頭DP 矩陣快速冪)

題目大意 有n個點,編號為1 n。第i個點和第j個點之間有一條無向邊當且僅當 i j k。求這個圖的生成樹個數。k 5,n 1015 k 5 n 10 15。題目分析 coming在他初二時的資料裡找到的一道題,是我校上古大神cdc給的。我不得不吐槽 難道前幾屆的dalao初二就能做這種題了嗎?而且...