问题如下:
有人养了一对兔子,这对兔子以后每月生一对兔子,新生兔子从第三个月开始,也是每月生一对兔子,问 12 个月后这人有多少对新生兔子?
首先分析:
从上可以知道,从3月份开始每月增加的兔子对数成等差数列,因此此题从3月份开始可以通过求等差数列的前n项和求每月的兔子对数。
因为是从三月开始所以n= n- 2; 首项为1,化简后得:
result = 2 + (n - 2) + (n * n - 5n + 6) / 2; 其中n要大于等于2;
1月则返回1对兔子
C语言编程如下:
1 | /* |