最大路径和

简介: 解题思路两个人A, B都从左下角走到右下角,都只能向下或者向右走,但是A跟B能做出不同的选择如果,某一时刻,AB进入相同的一 个格子,A和B只获得一份A走到之后,就认为B就是回来的路径A来到了a行b列, B来到了c行d列,如果它们跳进不同的格子里。只获得一个的情况下,问你a跟b获得整体的最大。如果某一个位置A也来过,B也来过,AB-定是同时来的,而不

文章目录

前言

解题思路

代码

前言

链接:https://www.nowcoder.com/questionTerminal/8ecfe02124674e908b2aae65aad4efdf

来源:牛客网


给定一个矩阵matrix,先从左上角开始,每一步只能往右或者往下走,走到右下角。然后从右下角出发,每一步只能往上或者往左走,再回到左上角。任何一个位置的数字,只能获得一遍。返回最大路径和。


输入描述:

第一行输入两个整数M和N,M,N<=200

接下来M行,每行N个整数,表示矩阵中元素


输出描述:

输出一个整数,表示最大路径和


解题思路

两个人A, B都从左下角走到右下角,都只能向下或者向右走,但是A跟B能做出不同的选择

如果,某一时刻,AB进入相同的一 个格子,A和B只获得一份

A走到之后,就认为B就是回来的路径


A来到了a行b列, B来到了c行d列,如果它们跳进不同的格子里。

只获得一个的情况下,问你a跟b获得整体的最大。




如果某一个位置A也来过,B也来过,AB-定是同时来的,而不会分先后

因为AB同步走


可以省掉一个变量d,可以根据abc来推出d


代码

public static void main(String[] args) {

 Scanner sc = new Scanner(System.in);

 int N = sc.nextInt();

 int M = sc.nextInt();

 int[][] matrix = new int[N][M];

 for (int i = 0; i < N; i++) {

  for (int j = 0; j < M; j++) {

   matrix[i][j] = sc.nextInt();

  }

 }

 int ans = cherryPickup(matrix);

 System.out.println(ans);

 sc.close();

}


public static int cherryPickup(int[][] grid) {

 


目录
相关文章
|
27天前
|
机器人
04_不同路径
04_不同路径
|
4月前
|
C++
C++ 获取当前程序路径
C++ 获取当前程序路径
|
5月前
|
C++
[C++] 获取工程路径、解决方案路径和.exe路径
[C++] 获取工程路径、解决方案路径和.exe路径
133 1
|
前端开发 JavaScript
路径相对、绝对
如果有人抄袭你的网站内容,里面的链接还会指向你的网站,有些抄袭的人比较懒,根本不会去改内容。 其实也不局限于被抄袭,如果有人将你的网页保存到本地电脑中,里面的链接、图片、css、以及js仍然会连接到你的网站。
|
机器人
不同路径
不同路径
58 0
C# 获取本机系统特殊文件夹路径
C# 获取本机系统特殊文件夹路径
C# 获取本机系统特殊文件夹路径
C#获取资源文件夹中的完整路径
C#获取资源文件夹中的完整路径
|
机器人
Day39——62.不同路径 63. 不同路径 II
Day39——62.不同路径 63. 不同路径 II
81 0
62. 不同路径
62. 不同路径
57 0
62. 不同路径