算法:网格走法数目

这篇博客介绍了如何解决一个算法问题,即在X*Y的网格中,从左上角到右下角的走法数量。小团只能向右或向下移动,问题转化为动态规划的计算。思路是通过计算每个格点上方和左方格点的走法之和来确定当前格点的走法数。博客提供了详细的思路分析,并给出了c++的实现代码。
摘要由CSDN通过智能技术生成

1. 题目描述

  有一个X*Y的网格,小团要在此网格上从左上角到右下角,只能走格点且只能向右或向下走。请设计一个算法,计算小团有多少种走法。给定两个正整数int x,int y,请返回小团的走法数目。
  输入一行为X,Y;输出一行为走法数目

2. 思路分析

  该题与“走台阶“的题目异曲同工。
  根据题目描述,走格时只能向下走或向右走。则假若目标格为(n,m),那么走向目标节点的走法就有两种,分别是:
  (1)由(n-1,m)格向下走
  (2)由(n,m-1)格向右走
所以,对与边界的格子来说,都只有上述的这两种走法,所以走向(n,m)格的总走法数目,就是【其上方格点的走法数目】与【其左方格点的走法数目】的和。此时假设函数f(x,y)表示走向格点(x,y)的走法数目,那么能够得到:

f
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值