zoukankan      html  css  js  c++  java
  • 01-网格走法 Python

    1、题目描述

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

    输入描述:

    输入包括一行,逗号隔开的两个正整数x和y,取值范围[1,10]。

    输出描述:

    输出包括一行,为走法的数目。



    示例1

    输入

    3 2
    

    输出

    10


    2. 思路分析

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

        f(x,y)=f(x1,y)+f(x,y1)

    3.Python实现

    # 递归
    # f(x,y) = f(x-1,y)+f(x,y-1)
    
    x, y = map(int, input().split())  
    def fun(x,y): if x==1 or y==1: return x+y else: return fun(x-1,y)+fun(x,y-1) ret = fun(x,y) print(ret)

    4、map函数:一种映射函数

    nums,target = map(int,input().split())
    print(nums,target)

    # 输入 5 6
    # 输出 5 6
     
     
  • 相关阅读:
    QT,QVector 基本用法,遍历[实例讲解]
    QT boolinq
    Qt532.QString_填充字符
    QT AES加密
    允许ubuntu下mysql远程连接
    Curl参数一览
    PHP实现http与https转化
    LINUX查看硬件配置命令
    使用.htaccess的时候服务器出现500错误(在配置后台时出现)
    64位win7旗舰版搭建apache+php+mysql开发环境
  • 原文地址:https://www.cnblogs.com/venicid/p/9677994.html
Copyright © 2011-2022 走看看