HDU-2018-奶牛的故事

这题找到递推式就好写了,递推式大致是:
f=n (n<=4)
f=f(n-1)+f(n-3) (n>4)
其实这题的题意,我觉得是有很大的问题的,它前后说的每年年初的意思都不一样,敬请参考,我发现这样可以符合答案。
第一年之后一个小母牛,第二年有了小母牛和她的孩子,接着三年四年都出生了两个孩子,第五年的时候,第二年出生的孩子按照虚岁计算,即出生也算一岁,这时候整好是第四个年头,然后年初的时候生,然后就在第五年生了,而不是在第六年生,搞不懂,出题人怎么想的?

#include 

int dfs(int n)
{
    if (n<=4)
        return n;
    else
        return dfs(n-1)+dfs(n-3);
}

int main()
{
    int n;
    while (scanf("%d",&n)&&n) {
        printf("%d\n", dfs(n));
    }
    return 0;
}

转载于:https://www.cnblogs.com/xyqxyq/p/10350126.html

你可能感兴趣的:(HDU-2018-奶牛的故事)