登神长阶 c语言题解

题目描述:
Description

小Y同学是ap剑圣时期就入坑lol的玩家,同时他也喜欢看lpl。

但是最近的他看比赛发生了一件奇怪的事情,某位著名解说总能把比分说对,但是胜负说反,在完成了上次五杀的预测之后,这次这位解说又在季后赛大放异彩,完成不少著作《死局》《止步于此》《打野小优》。据他在评论区的观察,这位解说开始了他的登神长阶。

假设该解说在第00分钟位于第00阶梯,第1,2,31,2,3分钟时位于第11阶梯,之后每一分钟处在的阶梯都是前三分钟的阶梯数之和,如第44分钟位于第33阶梯,第55分钟位于第55阶梯,第66分钟位于第99阶梯,注意他只会在整数分钟才会登上更高的阶梯,比如当他在3.53.5分钟时,他仍位于第11阶梯。小Y同学想知道该解说在第xx秒时的神力如何,所以请你告诉他第xx秒时该解说位于哪一级阶梯,为了防止他的神力过大,输出的答案对于425425取模。

Input
一个整数t( 0 \leq t \leq 10^8)t(0≤t≤10
8
)表示多少秒

Output
一个整数xx
表示当前取模后登上了哪一级阶梯。

Sample Input 1

0
Sample Output 1

0

基本思路:
经典的斐波那契数列函数题目
注意对分钟的整数取整
考虑几种特殊情况

解题代码:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
    int t,n,m,l;
    int a=1,b=1,c=1;
    scanf("%d",&t);
    n=t/60;
    if(n==0)
    {
        m=0;
    }
    if(n==1 || n==2 || n==3)
    {
        m=1;
    }
    if(n>3)
    {
        l=n-3;
        while(l>0)
        {
            m=(a+b+c)%425;
            a=b;
            b=c;
            c=m;
            l--;
        }
    }
    printf("%d",m);
    return 0;
}
ENDing。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值