C++
每次允许跨一级或二级楼梯,n级楼梯有几种走法,输出所有的走法。输入
输入n(n<10)
输出
输出所有可能的走法(按字典序,即把输出结果看成字符串,字符串值小的排在前面输出)
样例输入
4
样例输出
1111
112
121
211
22 #include <iostream>
#include <string>
using namespace std;
void dfs(int n, string path) {
if (n == 0) {
cout << path << endl;
return;
}
if (n >= 1) {
dfs(n - 1, path + "1");
}
if (n >= 2) {
dfs(n - 2, path + "2");
}
}
int main() {
int n;
cin >> n;
dfs(n, "");
return 0;
}
页:
[1]