4387: GESP C++六级样题_3下楼梯
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:1
解决:1
题目描述
样例输入 复制
4
样例输出 复制
7
提示
#include <iostream>
using namespace std;
long long downstair_record[61];
long long downstair(int n) {
if (n == 0)
return 1;
if (downstair_record[n] > 0)
return downstair_record[n];
long long res = 0;
if (n >= 1)
res += downstair(n - 1);
if (n >= 2)
res += downstair(n - 2);
if (n >= 3)
res += downstair(n - 3);
downstair_record[n] = res;
return res;
}
int main() {
for (int i = 0; i <= 60; i++)
downstair_record[i] = -1;
int n = 0;
cin >> n;
cout << downstair(n) << endl;
return 0;
}