动态规划问题

思路:

与裴波那契数列、爬楼梯等问题解法一样
状态转移方程:
边界:

#include 
using namespace std;
typedef long long LL;
const int N = 21;
LL dp[N];
int main(){
    int n;
    scanf("%d", &n);
    dp[0] = dp[1] = 1;
    for(int i = 2; i <= n; i++){
        dp[i] = dp[i - 1] + dp[i - 2];
    }
    printf("%lld\n", dp[n]);
    return 0;
}