首页 > 解决方案 > 关于用 2、3 或 4 步爬第 n 级楼梯的问题

问题描述

我的问题是

你正在爬楼梯。每次您可以进行 2 步、3 步或 4 步。楼梯有n台阶。您可以通过多少种不同的方式爬上楼梯?

这是我的代码:

int count(int n) 
{ 
    int a[n + 1]; 
    a[0] = 0;
    a[1] = 0; 
    a[2] = 1;
    a[3] = 1;
    a[4] = 2;
    for (int i = 5; i <= n; i++) 
        a[i] = a[i - 4] + a[i - 3] 
                + a[i - 2]; 
  
    return a[n]; 
}

我的代码对每个测试都正确吗?以及如何检查何时N计数非常高?

标签: c++

解决方案


推荐阅读