100个台阶,一次走一步,走两步,走三步,有多少种可能

    xiaoxiao2021-03-26  57

    分析

    第一个台阶  1 第二个台阶  11 2    //走两次1步或者走1次两步 第三个台阶  111 12 21 3 第四个台阶  1111 112 121 211 22 13 31 f(n)=f(n-1)+f(n-2)+f(n-3)  第n个台阶的可能 = n-1台阶的可能+n-2台阶的可能+n-3台阶的可能 

    我这里采用了递归算法

    //param x 台阶数目 int goadd(int x) { if (x == 1){ return 1; } else if (x == 2){ return 2; } else if (x == 3){ return 4; } else{ return goadd(x - 1) + goadd(x-2)+goadd(x-3); } } void main() { printf("%d", goadd(5)); getchar(); }

     

    转载请注明原文地址: https://ju.6miu.com/read-663694.html

    最新回复(0)