📄 t2_2.cpp
字号:
#include<stdio.h>
#include<malloc.h>
#define tt 1000
int k,max,n,i;
struct fbstack
{
int *base;
int rear;
int elem[];
}cq;
int InitStack(fbstack)
{
cq.base=(int *) malloc (sizeof(fbstack));
if (!cq.base) return 0;
else return 1;
}
int f[tt];
void main()
{
printf("input k & max \n");
scanf("%d%d",&k,&max);
if(InitStack(cq))
{
for(i=0;i<=(k-2);i++)
{
f[i]=0;
cq.elem[i]=0;
}
cq.elem[k-1]= cq.elem[k]= 1;
cq.rear=k;
n = k+1;
f[k-1]=f[k]=1;
while(cq.elem[cq. rear]<max)
{
int j= (cq. rear+1) % (k+1);
f[n]= cq.elem[cq. rear]*2- cq.elem[j];
cq.elem[j]=f[n];
cq.rear=j; n++;
}
if(cq.elem[cq.rear]>max) n=n-2; else n=n-1;
if (max==1) {n=k;f[k]=1;}
if (max==0) n=k-2;
}
for(i = 0; i <= n; i++)
printf(" f[%d]=%d",i,f[i]);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -