题意:
如题
思路:
递推的思想,牛只能在第4年才能开始生小牛,对于
第n年有多少牛 = n-1年的牛数量 + 新出生的牛的数量
新出生的牛的数量 = 已经出生满4年的牛的数量 = n-3年时候牛的数量
代码:
#includeusing namespace std;const int maxn = 70;int a[maxn];void init() { a[1] = 1; a[2] = 2; a[3] = 3; a[4] = 4; for (int i = 5; i <= maxn; i++) { a[i] = a[i - 1] + a[i - 3]; }}int main() { init(); int n; while (~scanf("%d", &n)) { if (n == 0) break; printf("%d\n", a[n]); } return 0;}