科丁乐20200223模拟赛 第三题

科丁乐20200223模拟赛 第三题

题目:

题目描述
新型冠状病毒疫情爆发后,小科每天都会关心新增确诊病例数,新增疑似病例数等数据,看着看着他就进入了梦乡,小科在梦境中遇到一串神奇的数字:1, 1, 1, 3, 5, 9, 17, …这些数字从第4项开始,每项都是前 3 项的和。梦境中还有一个神奇的巧克力宫殿,但是想要进入宫殿,必须要先破解开门密码。开门密码是这样的,宫殿守护者任意报出一个整数n,需要按照上述小科遇到的数字出现的规律找到第n项,而密码就是第n项数字的后4位。

小科在梦境中非常着急,你能帮助他打开宫殿的大门吗?

解析:

这道题

是斐波那契数列的升级版

每个数

是前三个数之和

难度太低了

不多说

直接上代码:

#include<bits/stdc++.h>
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int main()
{
    long long n,a,b,c,d;
    cin>>n;
    a=1;
    b=1;
    c=1;
    for(int i=4;i<=n;i++)
    {
        d=a+b+c;
        a=b;
        b=c;
        c=d;
    }
    if(d<1000) 
    {
        long long dd=d,sum=0;
        while(dd!=0)
        {
            dd/=10;
            sum++;
        }
        for(int i=1;i<=4-sum;i++)
        cout<<"0";
        cout<<d;
    }
    else cout<<d%10000;
    return 0;
}
发布了24 篇原创文章 · 获赞 0 · 访问量 611

猜你喜欢

转载自blog.csdn.net/zliang_ma/article/details/104482540