上台阶(递归与递推)

#include <iostream>

#include <cstdio>

using namespace std;

int fun(int n)

{

    if(n==1) return 1;

    if(n==2) return 2;

    if(n==3) return 4;

    if(n>2) return fun(n-1)+fun(n-2)+fun(n-3);

    //n-3必须>0,所以n==1,n==2,n==3的情况都得单独列出来

}

int main()

{

    int n;

    cin>>n;

    cout<<fun(n);

    return 0;

}

这篇文章,是又一个故事的结束...
lazy's story is continuing.
原文地址:https://www.cnblogs.com/Hello-world-hello-lazy/p/13580343.html