JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

Java练习:机器人于网格左上角到达网格右下角,有多少不同路径

wys521 2024-11-08 15:08:32 精选教程 22 ℃ 0 评论

一个机器人位于m x n网格的左上角到达网格的右下角,有多少条不同的路径?

一个机器人位于m x n网格的左上角(起始点标记为Start)。

机器人每次只能向下或向右移动一步。机器人试图达到网格的右下角(标记为Finish)。

有多少条不同的路径?

表格中数字表示由在上角Start位置到相应格子的路径数。


第一列和第一行的值都是1,其他格子的值则是上面一个和左边一个格子的值之和。

则(i,j)的值 =(i-1,j)的值 + (i,j-1)的值。

import java.util.*;
 
public class Zuoye9 {
 
	public static void main(String[] args) {
 
		Scanner reader = new Scanner(System.in);
		int mytwo[][] = new int[1000][1000];
 
		System.out.println("输入M X N的网格值");
 
		System.out.println("n=");
		int n=reader.nextInt();
 
		System.out.println("m=");
		int m=reader.nextInt();          //nxm阶矩阵
 
		for(int i=0;i<m;i++) {           //(0,m)赋值,给mytwo[0][i]赋值
			mytwo[0][i] = 1;
		}
 
		for(int i=0;i<n;i++) {          //(n,0)赋值,给mytwo[i][0]赋值
			mytwo[i][0] = 1;
		}
 
		for(int i=1;i<n;i++) {
			for(int j=1;j<m;j++) {
				mytwo[i][j] = mytwo[i-1][j] + mytwo[i][j-1];
			}
		}
 
		System.out.println(mytwo[n-1][m-1]);
	}
 
}

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表