P1349 廣義斐波那契數列

2022-05-14 00:50:47 字數 908 閱讀 9864

題目描述

廣義的斐波那契數列是指形如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在長整數範圍內。

輸出格式:

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

輸入輸出樣例

輸入樣例#1:

1111

107輸出樣例#1:

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

題幹這道題是一旦非常簡單的矩陣加速。

但我卻用了好久才a。

因為呼叫函式的時候忘了使用函式名,只寫了括號,編譯過了就認為沒錯。。。。。。

一定要注意!!!!

#include#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#define ll unsigned long long

#define mod 1000000007

using

namespace

std;

struct

nodex,ans,b,p,d;

ll n,m,a1,a2;

node ch(node x,node y)

returnp;}

void

fastlow()

}int

main()

**

洛谷 P1349廣義斐波那契

題意 現在定義fib數列為 an p an 1 q an 2求第n項 m的答案。題解 begin p 1 q 0 end begin f n 1 f n 2 end begin p f n 1 q f n 2 f n 1 end begin f n f n 1 end 這題有個玄學mod。矩陣乘法的...

洛谷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 ...