码迷,mamicode.com
首页 > 其他好文 > 详细

2017.11.30

时间:2017-11-30 19:23:56      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:包括   for   输入   数列   小数   1.3   17.1   include   个数   

递推数列

题目描述

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

输入描述:

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

输出描述:

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

输入

20 1 1 14 5

输出

8359


#include <iostream>  
#include <cstdio>
#include <iomanip>  
#include <string>
#include <cmath>
//用setprecision(n)设置精度,其中n表示精确到小数点后n位  
//解题的关键:
//找出规律,这是一个迭代的问题
using namespace std;

int main()
{
    long long a0, a1, p, q, k;
    long long sum = 0;
    cin >> a0 >> a1 >> p >> q >> k;
    for (int i = 0; i < k-1;i++)
    {
        sum =( p*a1 + q*a0)%10000;
        a0 = a1;
        a1 = sum;
        
    }
    cout << sum % 10000;
    return 0;
}

 

2017.11.30

标签:包括   for   输入   数列   小数   1.3   17.1   include   个数   

原文地址:http://www.cnblogs.com/panlangen/p/7930257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!