题目描述
编写一个求斐波那契数列的递归函数,输入n 值,使用该递归函数,输出如下图形(参见样例)。
输入
输入第一行为样例数m,接下来有m行每行一个整数n,n不超过10。
输出
对应每个样例输出要求的图形(参见样例格式)。
样例输入 Copy
1
6
样例输出 Copy
0
0 1 1
0 1 1 2 3
0 1 1 2 3 5 8
0 1 1 2 3 5 8 13 21
0 1 1 2 3 5 8 13 21 34 55
代码如下:
/*
0
0 1 1
0 1 1 2 3
0 1 1 2 3 5 8
0 1 1 2 3 5 8 13 21
0 1 1 2 3 5 8 13 21 34 55
*/
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <math.h>
using namespace std;
int main(){
long long f[25];
f[0]=0;f[1]=1;f[2]=1;
for(int i=3;i<25;i++){
f[i]=f[i-1]+f[i-2];
}
int t;
cin>>t;
while(t--){
int num;
cin>>num;
int k=(num-1)*2;
for(int i=0;i<=(num-1)*2;i+=2){
for(int m=0;m<k;m++){
cout<<" ";
}
for(int j=0;j<=i;j++){
cout<<f[j]<<" ";
}
cout<<endl;
k-=2;
}
}
return 0;
}