Acwing 3392. 递推数列

3392. 递推数列 - AcWing题库

给定 a0,a1,以及 an=p×an−1+q×an−2中的 p,q。

这里 n≥2。

求第 k� 个数 ak�� 对 1000010000 的模。

输入格式

输入包括 55 个整数:a0、a1、p、q、k。

输出格式

第 k 个数 ak对 10000 的模。

数据范围

1≤a0,a1,p,q,k≤10000

输入样例:

20 1 1 14 5

输出样例:

8359

思路:递推,公式有了,套用就好 

#include 
using namespace std;

const int N = 1e5 + 10;
const int MOD = 10000;
int dp[N];

int main() {
    int p, q, k;
    cin >> dp[1] >> dp[2] >> p >> q >> k;
    for(int i = 3; i <= k + 1; i++) {
        dp[i] = p * dp[i - 1] % MOD + q * dp[i - 2] % MOD;
    }
    cout << dp[k + 1] % MOD << endl;
    return 0;
}

 

你可能感兴趣的:(算法,c++,数据结构)