C爬楼梯问题n级楼梯每次可以爬123级一共步数为m

楼梯 数为 爬楼梯
小鱼果MM  
网友的回答
smile筱123

include <iostream>
include <string>
using namespace std;

int n,m;//由题,n为级数,m为步数
long long cnt0;//统计情况总数
void dfs(int step_climb,string ans,int left)//step_climb为已经走了几步
{//ans为最后输出的字符串答案,left为剩余的台阶级数

if(step_climb>m||left<0)//如果走了不止m步或者走过头(台阶剩余为负)
{
return ;
}
if(step_climbm&&left0)//如果正好走m步并且没有台阶剩余
{
ans.erase(ans.begin());//删去多余的-连接号
cout<<ans<<endl;//输出答案
cnt++;//计数器+1
return;
}

dfs(step_climb+1,ans+"-1",left-1);//向三种情况递归搜索,ans添加当前这一步的级数
dfs(step_climb+1,ans+"-2",left-2);
dfs(step_climb+1,ans+"-3",left-3);
}

int main()
{
cin>>n>>m;
dfs(0,"",n);
cout<<"一共有"<<cnt<<"种情况"<<endl; 
}

若有疑问欢迎回复

祖国的砖。

如今,不少人都有了别墅。而随着欧式装修风格的逐渐火热起来,很多人都想把自己家里的别墅装修成欧式风格。而在装修的过程中,楼梯是很重要的一环。相信很多想要对欧式别...

妞我等你长大

到广告公司去找人来,他们会帮你设计··

下一个路岔

请问一下,我家室内的楼梯,靠墙的一面角怎么办,如何设计更方便好看,就是靠墙的角落,墙上是壁纸,谁能帮我设计一下楼梯下的样式,能做出效果图最好

林hui杨65928

你做13步就好了。中间弄根120圆管做旋转楼梯就可以了。单面扶手。踏步长880.步宽中心距保持250就好了。踏步高在180左右。冰箱等楼梯做好再买。

雾都下的吃货

你做13步就好了。中间弄根120圆管做旋转楼梯就可以了。单面扶手。踏步长880.步宽中心距保持250就好了。踏步高在180左右。冰箱等楼梯做好再买。长1700mm是可以了...