问题描述
斐波那契(Fibonacci)数列,又称黄金分割数列:该数列的第一项是0,第二项是1,从第三项起每一项都是前两项之和。
编写C语言程序,从键盘读入2个整数m和n(m和n使用空格分隔),然后输出斐波那契数列中数值介于m与n之间(包含m与n)的项,项与项之间用空格分隔。最后一个数后面没有空格。
输入格式
一共1行数据,包含2个整数m和n(m和n使用空格分隔)。
输出格式
项与项之间使用一个空格分隔。最后一个数后面没有空格。
数据规模与约定
整数m和n的值约定为 0 ≤ m < n ≤ 1 000 000 000 000 000 000。保证在给定的区间至少有1个项。
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
if(n==1||n==2)
cout<<"1";
if(n>2){
long c[n];
int t1=1,t2=1,t3;
for(int i=3;i<=n;i++){
t3=(t1+t2)%998244353;
t1=t2;
t2=t3;
}
cout<<t3;
}
}