#include <iostream>
using namespace std;

int dfs(int n){
    if(n<3){
        return 1;
    }
    else{
        return dfs(n-1)+dfs(n-2);
    }
}
int main() {
    int n;cin>>n;
    cout<<dfs(n)<<'\n';
    return 0;
}
// 64 位输出请用 printf("%lld")

a表示出生不低于两个月的兔子数量,b表示出生一个月的兔子数量,c表示刚出生的兔子数量,可知:每过一个月就有:

a = a + b

b = c

c = a

兔子总数 = a + b + c

其实就是斐波那契数列。

活动地址https://www.nowcoder.com/discuss/726480854079250432