Background
Special for beginners, ^_^
Description
有一种兔子,出生后一个月就可以长大,到第二个月变成大兔子,然后到了第三个月,一对长大的兔子就可以生育一对小兔子且以后每个月都能生育一对。现在,我们有一对刚出生的这种兔子,那么,n 个月过后,我们会有多少对兔子呢?假设所有的兔子都不会死亡。
Format
Input
输入仅一行,包含一个自然数 n (1≤n≤46)。
Output
输出仅一行,包含一个自然数,即 n 个月后兔子的对数。
Samples
输入数据 1
5
Copy
输出数据 1
5
Copy
Limitation
1s, 1024KiB for each test case.
代码:
#include<bits/stdc++.h>
using namespace std;
int a[10000] = {1, 1};
int main() {
int n;
scanf("%d", &n);
for (int i = 2; i < n; ++i) {
a[i] = a[i - 1] + a[i - 2];
}
printf("%d", a[n - 1]);
return 0;
}