lwy梦境中的斐波那契数列——诈骗签到题

该博客讨论了一个特殊的斐波那契数列,它出现在lwy的梦境中。这个数列的定义与常规斐波那契数列不同,其中每个数是前一个数加上当前的索引值。博客提供了计算给定n值下梦境斐波那契数列的方法,并给出了处理大数的注意事项,例如使用long long类型和取模操作。示例展示了如何计算1908在梦境斐波那契数列中的值,并输出结果为0。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lwy又在说梦话了!在梦境中,他遇到了一个和现实生活中不一样的斐波那契数列!

现实中的斐波那契数列:

f(1)=1,f(2)=2

当n≥3时,f(n)=f(n−1)+f(n−2)

lwy梦境中的斐波那契数列:

f(1)=1

当n≥2时,f(n)=f(n−1)+n

接下来,给定一个n,请聪明的你求出lwy梦境中的斐波那契数列描述下的f(n)是多少。

由于答案可能很大,请将答案对4399取模。

科普一下,int只能表示10^9以内的数量级,若不取模数据很大的话,可能会超过int的表示范围。对于10^18以内的数量级,你可以通过使用long long来表示。

long long的输入输出方式如下——

long long n;//定义一个long long数据类型的变量n
scanf("%lld",&n);//输入n
printf("%lld",n);//输出n

输入描述:

输入一个正整数n
1≤n≤10^9

输出描述:

输出一个整数,表示lwy梦境中的斐波那契数列描述下的f(n)是多少

示例1

输入

1908

输出

0

#include <stdio.h>

long long f(int n){
    if (n == 1)
        return 1;
    else 
        return f(n - 1) + n;
}
int main(){
       long long n;
       scanf ("%d",&n);
        printf("%d",f(n) % 4399);
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值