P2461 SDOI2008 遞迴數列

2022-05-20 20:34:12 字數 881 閱讀 1599

p2461 [sdoi2008]遞迴數列

紀念不看題解\(a\)掉的第乙個矩陣快速冪

先做完模板題吧p1939

矩陣開\((k+1)^2\),定義函式\(f_x\)為\(\sum\limits_^xa_i\),顯然\(f_x=f_+a_i\)

\(a_,a_.....a_,f_\)

\(\longrightarrow\)

\(a_i,a_.....a_,f_i\)

提示到此結束了,仔細想想,相信你能構造出矩陣

#include#include#includeusing namespace std;

typedef long long ll;

inline ll read()

while(c>='0'&&c<='9')

x=(x<<3)+(x<<1)+c-'0',c=getchar();

return x*f;

}const ll maxn=51;

struct mata,base,st,r;

ll k,m,n,ans1,ans2,ans,mod,sum;

ll b[maxn],c[maxn];

inline mat mul(const mat &x,const mat &y)

inline void pow(ll mi)

}int main()else

for(ll i=1;ians2=(ans2+b[i])%mod;

ans=(ans1-ans2+mod)%mod;

printf("%lld",ans);

return 0;

}/*2

1 11 1

2 10 1000003

142*/

bzoj 3231 SDOI2008 遞迴數列

乙個由自然數組成的數列按下式定義 對於i k a i b i 對於i k a i c 1 a i 1 c 2 a i 2 c k a i k 其中b j 和 c j 1 j k 是給定的自然數。寫乙個程式,給定自然數m n,計算a m a m 1 a m 2 a n 並輸出它除以給定自然數p的餘數的...

BZOJ3231 Sdoi2008 遞迴數列

bzoj3231 sdoi2008 遞迴數列 乙個由自然數組成的數列按下式定義 對於i k ai bi 對於i k ai c1ai 1 c2ai 2 ckai k 其中bj 和 cj 1 j k 是給定的自然數。寫乙個程式,給定自然數m n,計算am am 1 am 2 an 並輸出它除以給定自然數...

BZOJ 3231 Sdoi2008 遞迴數列

bzoj 3231 sdoi2008 遞迴數列 矩陣乘法 乙個由自然數組成的數列按下式定義 對於i k ai bi 對於i k ai c1ai 1 c2ai 2 ckai k 其中bj 和cj 1 j k 是給定的自然數。寫乙個程式,給定自然數m n,計算am am 1 am 2 an 並輸出它除以...