【动态规划】独一无二的路径

来源:互联网 发布:asp.net vb 教程 编辑:程序博客网 时间:2024/06/06 06:50

题目描述:

有一个XxY的网格,一个机器人只能走格点且只能向右或向下走,要从左上角走到右下角。请设计一个算法,计算机器人有多少种走法。
给定两个正整数int x,int y,请返回机器人的走法数目。保证x+y小于等于12。


输入:

2,2


输出:

2


我的代码:

import java.util.*;public class Robot {/** * 计算一共有几种走法 * @param x 矩阵的行 * @param y 矩阵的列 * @return  返回从左上角走到右下角的走法 */public int countWays(int x, int y) {// 定义矩阵int dp[][] = new int[x][y];// 第一行初始化for (int i = 0; i < y; i++)dp[0][i] = 1;//第一列初始化for (int i = 0; i < x; i++)dp[i][0] = 1;// 要从1开始for (int i = 1; i < x; i++) {for (int j = 1; j < y; j++) {//等于走到上方的走法数量 + 走到左侧的走法数量之和dp[i][j] = dp[i - 1][j] + dp[i][j - 1];}}return dp[x - 1][y - 1];}}



0 0
原创粉丝点击