已知斐波那契数列 Fn=Fn−1+Fn−2(n>=3),F1=1,F2=1
求解该数列的第n项,结果对998244353取模。
输入格式:
输入一个正整数n (1<=n<=10000000)。
输出格式:
输出一个数,数列的第n项
输入样例1:
1
结尾无空行
输出样例1:
1
结尾无空行
输入样例2:
3
结尾无空行
输出样例2:
2
结尾无空行
#include<stdio.h>
#define N_max 998244353
int main()
{
int n=0;
int i=0;
int f1 = 1, f2 = 1,fn;
scanf("%d", &n);
if (n == 1 || n == 2)
{
fn = 1;
}
else
{
for (i = 3; i <= n; i++) {
fn = (f1 + f2) % N_max;
f2 = f1;
f1 = fn;
}
}
printf("%d", fn);
return 0;
}
运行结果: