/*有一个母羊,第2年和第4年可以生一头小母羊,在第5年死去,小母羊在它出生的第2年和第4年生小母羊,第5年死去,求第N年有多少个母羊*/ #include <iostream> using namespace std; int num(int N){ if (N ==0) return 0; if(N == 1) return 1; if(N == 2 || N == 3) return 2; if(N == 4) return 4; return (N >= 5 ? 0 : 1) + num(N - 4) + num(N - 2);//表示如果超过五年就要死去一个,实际就是一只羊经过了1年,而另外一只羊经过了3年。 //num(N-4) 就是求取经过一年的子孙,num(N-2)就是求取救过3年的索引子孙 } int main(){ int res = 0; cout<<num(9); cin.get(); return 0; }
有一个母羊,第2年和第4年可以生一头小母羊,在第5年死去,小母羊在它出生的第2年和第4年生小母羊,第5年死去,求第N年有多少个母羊
最新推荐文章于 2021-03-01 23:32:04 发布