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;
}