首页 > 试题广场 >

方格走法

[编程题]方格走法
  • 热度指数:4930 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
有一个X*Y的网格,小团要在此网格上从左上角到右下角,只能走格点且只能向右或向下走。请设计一个算法,计算小团有多少种走法。给定两个正整数int x,int y,请返回小团的走法数目。


输入描述:
输入包括一行,空格隔开的两个正整数x和y,取值范围[1,10]。


输出描述:
输出一行,表示走法的数目
示例1

输入

3 2

输出

10
package main

import (
    "fmt"
)

func main() {
    var x,y int
    fmt.Scan(&x,&y)
    mat:=make([][]int,x+1)
    for i,_:=range mat{
        mat[i]=make([]int,y+1)
    }
    for i:=0;i<=y;i++{
        mat[0][i]=1
    }
    for i:=0;i<=x;i++{
        mat[i][0]=1
    }
    for i:=1;i<=x;i++{
        for j:=1;j<=y;j++{
            mat[i][j]=mat[i-1][j]+mat[i][j-1]
        }
    }
    // fmt.Printf("%v\n",mat)
    fmt.Print(mat[x][y])
}

发表于 2023-03-18 22:08:38 回复(0)