递推数列

题目描述

给定a0,a1,以及an=pa(n-1) + qa(n-2)中的p,q。这里n >= 2。 求第k个数对10000的模。

输入描述:

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

输出描述:

第k个数a(k)对10000的模。

分析

循环求出ak即可

#include <iostream>

using namespace std;

int main(){
    int a0, a1, p, q, k;
    cin >> a0 >> a1 >> p >> q >> k;
    int ak;
    for(int i = 2; i <= k; i++){
        ak = (q * a0 + p * a1)%10000;
        a0 = a1;
        a1 = ak;
    }
    if(k == 0) ak = a0;
    if(k == 1) ak = a1;
    cout << ak << endl;
    
    return 0;
}
原文地址:https://www.cnblogs.com/zhuobo/p/10199153.html