#include<bits/stdc++.h>
using namespace std;
void print(int n)
{
for(int i=0; i<n; i++)
{
printf("c");
}
printf("\n");
}
int main()
{
int a[100];
int x=38;
int y=5;
a[1]=7+1;//push f[now]=1
a[2]=7+0;//push f[now-1]=0
a[3]=4;//load n
a[4]=7+1;//push now=1
/*y*/
//复制n
a[5]=7+0;//push 0,stack[5]=0;
a[6]=7+3;//push 3
a[7]=7+5;//push 5
a[8]=5;//copy stack[5]=stack[3]=n
//复制now
a[9]=7+0;//push 0,stack[6]=0;
a[10]=7+4;//push 4
a[11]=7+6;//push 6
a[12]=5;//copy stack[6]=stack[4]=now
//比较n和now stack[5]为结果,1代表可以结束循环
a[13]=3;
a[14]=7+x; //x为结束循环之后的行号
a[15]=6;//Jump,结束之后stack内为4个数
//now++
a[16]=7+1;
a[17]=1;
//复制f[now]和f[now-1]
a[18]=7+0; //pop计算结果用的,y=0时,jump相当于去掉两个数字
a[19]=7+0;
a[20]=7+1;
a[21]=7+6;
a[22]=5;
a[23]=7+0;
a[24]=7+2;
a[25]=7+7;
a[26]=5;
//计算stack[6]=f[now+1]
a[27]=1;
//用f[now]覆盖f[now-1]
a[28]=7+1;
a[29]=7+2;
a[30]=5;
//f[now+1]覆盖f[now]
a[31]=7+6;
a[32]=7+1;
a[33]=5;
//pop stack[6]和stack[5]
a[34]=6;
//jump 到比较的部分
a[35]=7+1;
a[36]=7+y;
a[37]=6;
/*y*/
/* X */
a[38]=7+0;
a[39]=7+1;
a[40]=7+5;
a[41]=5;
a[42]=7+1;
a[43]=107;
a[44]=6;
for(int i=1; i<=44; i++)
print(a[i]);
return 0;
}
ZOJ3952 Fibonacci Sequence Chicken Edition 【模拟】
最新推荐文章于 2020-09-29 22:35:20 发布