codevs1574廣義斐波那契數列

2022-04-06 04:14:32 字數 926 閱讀 1053

時間限制: 1 s

空間限制: 256000 kb

題目等級 : 鑽石 diamond

廣義的斐波那契數列是指形如an=p*an-1+q*an-2的數列。今給定數列的兩係數p和q,以及數列的最前兩項a1和a2,另給出兩個整數n和m,試求數列的第n項an除以m的餘數。

輸入描述 input description

輸入包含一行6個整數。依次是p,q,a1,a2,n,m,其中在p,q,a1,a2整數範圍內,n和m在長整數範圍內。

輸出描述 output description

輸出包含一行乙個整數,即an除以m的餘數。

樣例輸入 sample input

1 1 1 1 10 7

樣例輸出 sample output

/*

矩陣乘法模板

跟斐波那契差不多

就是初始化難理解

靜下心來推推式子,然後明確a1,a2是最後才乘上的就好了

*/#include

#include

#define ll long long

using

namespace

std;

intn,mod,q,p,a1,a2;

struct

node

ans,

base

;ll init()

while(c>='

0'&&c<='9')

return f*x;

}node mul(node a,node b)

return

tmp;

}void

qw(ll n)

}int

main()

資料範圍及提示 data size & hint

數列第10項是55,除以7的餘數為6。

洛谷1349 廣義斐波那契數列

廣義的斐波那契數列是指形如an p an 1 q an 2的數列。今給定數列的兩係數p和q,以及數列的最前兩項a1和a2,另給出兩個整數n和m,試求數列的第n項an除以m的餘數。輸入包含一行6個整數。依次是p,q,a1,a2,n,m,其中在p,q,a1,a2整數範圍內,n和m在長整數範圍內。輸出包含...

Luogu P1349 廣義斐波那契數列

既然廣義斐波那契,而且資料範圍這麼大,那麼我們使用矩陣快速冪來進行求解。大家都知道斐波那契的初始矩陣如下 begin1 1 1 0 end 那麼這道題我們怎麼推矩陣呢?先確定目標矩陣如下 begin f n f end 然後推導過程如下 f n p times f q times f beginf ...

P1349 廣義斐波那契數列

題目描述 廣義的斐波那契數列是指形如an p an 1 q an 2的數列。今給定數列的兩係數p和q,以及數列的最前兩項a1和a2,另給出兩個整數n和m,試求數列的第n項an除以m的餘數。輸入輸出格式 輸入格式 輸入包含一行6個整數。依次是p,q,a1,a2,n,m,其中在p,q,a1,a2整數範圍...