Description
试利用循环队列编写k阶斐波那契数列中前n+1项 (f(0),f(1),…,f(n))的程序,要求满足: f(n)<=max而f(n+1)>max,其中max为某个约定的常数。(注意:本题所用循环队列的容量仅为k,则在程序执行结束时,留在循环队列中的元素应是所求k阶斐波那契序列中的最后k项 f(n-k+1),…,f(n))。
Input
输入常数max(0<max<10000),阶数k(1<k<100),用空格隔开。
Output
输出k阶斐波那契数列中的最后k项f(n-k+1),…,f(n)。
-
Sample Input
14 2 -
Sample Output
8 13
#include<stdio.h>
int main(){
int arr[1000] = {0}, sum[1000] = {0};
int max, k, i, tmp;
scanf("%d%d",&max, &k);
arr[k] = 1;
sum[k] = 1;
for(i = k+1; ; i++){
arr[i] = sum[i-1];
s
使用循环队列实现k阶斐波那契数列

该程序利用循环队列生成k阶斐波那契数列的前n+1项,满足f(n)<=max且f(n+1)>max,其中max<=10000。循环队列容量为k,输出序列的最后k项f(n-k+1)到f(n)。
最低0.47元/天 解锁文章
1493

被折叠的 条评论
为什么被折叠?



