黎子卿 发表于 2023-11-21 14:41:28

C++

每次允许跨一级或二级楼梯,n级楼梯有几种走法,输出所有的走法。

输入
输入n(n<10)
输出
输出所有可能的走法(按字典序,即把输出结果看成字符串,字符串值小的排在前面输出)
样例输入
4


样例输出
1111
112
121
211
22

isdkz 发表于 2023-11-21 14:46:39

#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]
查看完整版本: C++