开发者社区> 问答> 正文

跳跃程序测试问题

一救援机器人有三种跳跃模式,可分别跳跃1m,2m,3m的距离,请用程序实现该机器人行进n米路程时可用的跳跃方式。
程序语言不限,当距离n值足够大时,程序执行时间尽量小。
例:当距离为4米时,输出结果有7种:

1m,1m,1m,1m
1m,1m,2m
1m,2m,1m
1m,3m
2m,1m,1m
2m,2m
3m,1m

展开
收起
蛮大人123 2016-02-27 14:47:12 1965 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪
    void step(int n, std::string str) {
        if (n == 0) { std::cout << str << "\b " << std::endl; }
        if (n >= 1) step(n-1, str+"1m,");
        if (n >= 2) step(n-2, str+"2m,");
        if (n >= 3) step(n-3, str+"3m,");
    }

    当 n == 4 的时候,调用:step(4, ""); 原样输出你想要的。

    2019-07-17 18:48:52
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
移动互联网测试到质量的转变 立即下载
给ITer的技术实战进阶课-阿里CIO学院独家教材(四) 立即下载
F2etest — 多浏览器兼容性测试整体解决方案 立即下载