solomon.c

来自「how to use recusive medthod to generate 」· C语言 代码 · 共 36 行

C
36
字号
#include <stdio.h>#include <stdlib.h>//Solomon Golomb sequence unsigned int solomon (unsigned int n){    static unsigned int f[3];    f[0]=0; f[1]=1; f[2]=2; f[3]=2;    unsigned int k;    unsigned int total,t,next;    if(n>3){        total=5;t=3;next=3;;        while(n>total){            for(k=solomon(t);k>0&&n>total;++next,--k){                total=total+t;            }            t++;        }        return next;    }else{        return f[n];    }    return 0;}int main(){    printf("selomon sequence demo:");    printf("f(100)=%lu\n",solomon(100));    printf("f(9999)=%lu\n",solomon(9999));    printf("f(123456)=%lu\n",solomon(123456));    printf("f(1000000000)=%lu\n",solomon(1000000000));    return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?