蓝桥杯(JAVAB组)2013第三题:振兴中华-创新互联

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

青龙ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

小明参加了学校的趣味运动会,其中的一个项目是:跳格子。

地上画着一些格子,每个格子里写一个字,如下所示:

比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。

要求跳过的路线刚好构成“从我做起振兴中华”这句话。

请你帮助小明算一算他一共有多少种可能的跳跃路线呢?

运行限制
  • 大运行时间:1s

  • 大运行内存: 128M

解题思路:

如下图所示,可以将所有格子看成一个5 * 4的棋盘格,左上角的“从”记(0, 0),我们暂且不考虑边界。比如,当小明位于(1, 1)时,他将有四种路线(上下左右)。分析问题我们可以很容易的发现,其实小明只能走右边或者下边,因为只有这样才有可能走出“从我做起振兴中华”这句话。即记小明坐标为(x, y),则小明每走一步后可面临的选择只有(x+1, y)或者(x, y+1)。

同时我们需要考虑边界问题,即当小明的坐标值x = 4或者y = 3时,小明到达边界。因此该问题我们可以用递归解决。

原文链接:https://blog.csdn.net/m0_60353039/article/details/124973184

代码:

class Main{
    public static void main(String[] args) {
         System.out.println(dfs(0,0));
    }
    public static int dfs(int x,int y) {//该方法用于递归所有可能的结果
        if(x == 4||y == 3) {//递归终止条件
            return 1;
        }
        return dfs(x+1,y)+dfs(x,y+1);
    }
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章题目:蓝桥杯(JAVAB组)2013第三题:振兴中华-创新互联
网页地址:http://bzwzjz.com/article/cchhjs.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: H5网站制作 高端品牌网站建设 网站制作 做网站设计 成都网站制作 教育网站设计方案 成都定制网站建设 重庆外贸网站建设 成都网站建设 重庆网站制作 成都网站建设公司 移动手机网站制作 成都网站建设 定制级高端网站建设 四川成都网站制作 响应式网站设计方案 网站设计制作报价 重庆网站设计 自适应网站设计 成都网站建设推广 成都网站设计制作公司 网站制作