• 37.递推:Pell数列



    总时间限制: 

    3000ms

     

    内存限制: 

    65536kB

    描述

    Pell数列a1, a2, a3, ...的定义是这样的,a1 = 1, a2 = 2, ... , an = 2 * an − 1 + an - 2 (n > 2)
    给出一个正整数k,要求Pell数列的第k项模上32767是多少。

    输入

    1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数k (1 ≤ k < 1000000)

    输出

    n行,每行输出对应一个输入。输出应是一个非负整数。

    样例输入

    
    2
    
    
    1
    
    
    8
    

    样例输出

    
    1
    
    
    408
    

    代码:

    #include

    using namespace std;

    #include

    #include

    const int maxn=pow(10,6)+100;

    int a[1000010];

    int maxx=-maxn,p[100]={0};

    int main()

    {

           int n,k;

           scanf("%d",&n);

           for(int i=1;i<=n;++i)

           {

                  scanf("%d",&p[i]);

                  if(p[i]>maxx)

                  maxx=p[i];

           }

           a[1]=1;a[2]=2;

           for(int i=3;i<=maxx;++i)

           {

                  a[i]=(2*a[i-1]+a[i-2])2767;

           }

           for(int i=1;i<=n;++i)

           {

                  printf("%d ",a[p[i]]);

           }

           return 0;

     }

  • 相关阅读:
    第02组 团队项目-需求分析报告
    团队项目-选题报告
    第二次结对编程作业
    第2组 团队展示
    Alapha冲刺(3/6)
    Alpha(2/6)
    Alpha冲刺(1/6)
    第2组 团队Git现场编程实战
    团队项目-需求分析报告
    团队项目-选题报告
  • 原文地址:https://www.cnblogs.com/csgc0131123/p/5290443.html
Copyright © 2020-2023  润新知