B
来源:互联网 发布:java枚举 编辑:程序博客网 时间:2024/06/11 08:07
/*这个类似于斐波那契数列*/#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int main(){ int a[201][51];//定义二维数组用来存放每一个数的单个数 int i,j,n,c1,c2; memset(a,0,sizeof(a));//将二维素数置为0 a[1][0] = 1; a[2][0] = 2; a[3][0] = 3; int max,k; //利用大于9进位的思想,如果数的位数如勾搭,则需要一位一位的家加 for(i = 4; i<=200; i++) { for(k = 0; k<=45; k++) { a[i][k] += a[i-2][k]+a[i-1][k]; printf("%d--\n",a[6][0]); if(a[i][k]>9) { a[i][k] -= 10; a[i][k+1] += 1; } } } while(~scanf("%d",&n)) { for(i = 45; i>=0; i--) if(a[n][i]) break;//从最高位开始判断,当最高位为非0是,开始输出 for(j = i; j>=0; j--) printf("%d",a[n][j]);//输出指定的数 printf("\n"); } return 0;}
0 0