java - 有一个x*y网络,小团在此网格上从左上角走到右下角,只能走格点且只能往右走或往下走
天蓬老师
天蓬老师 2017-04-18 09:57:19
[Java讨论组]

计算有多少种走法。给定正整数int x,int y,请返回小团的走法数目
输入一行,逗号隔开的正整数x,y取值范围〔1,10〕
输出包括一行,为走法数目

function main(parm_1,param_2,param_n){
    if(parm_1=parm_2){
        param_n = parm_1 = 1 ?2 :2+4^(parm_1-1);
    }
    if(parm_1=parm_2>1){
        param_n = 2+;
    }
    if(parm_1>parm_2){
        param_n = ;
    }
    if(parm_1<parm_2){
        param_n = ;
    }
    return param_n;
}
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
天蓬老师

看下面的图

计算过程:

  1. 把底边和右边的每个格子标记为1

  2. 其余格子从右下角往右上角依次遍历

  3. 每个格子的值是其右边和下边格子值的和

  4. 遍历到右上角后求得最终结果

例如上图的结果为10

这种解法依据的思路,由于每个格子只能向右或向下走,那么它的走法就由其右边格子的走法和下边格子的走法之和。而最下边和最右边的每个格子都只有唯一的走法。由此就能推导出其余格子的走法。

PS:这种方法需要遍历一遍,复杂度为O(n)。除了这种方法之外,也许还可以从数学的角度来找到通项公式,从而一次求得最终结果也说不定。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号