题解 | #礼物的最大价值#

礼物的最大价值

https://www.nowcoder.com/practice/2237b401eb9347d282310fc1c3adb134?tpId=13&tqId=2276652&ru=/exam/oj/ta&qru=/ta/coding-interviews/question-ranking&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D13

package main

/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param grid int整型二维数组
 * @return int整型
 */
func maxValue( grid [][]int ) int {
    // write code here
    dp := make([][]int, len(grid)+1)
    for i := range dp {
        dp[i] = make([]int, len(grid[0])+1)
    }
    dp[1][1] = grid[0][0]
    for i:= range grid {
        for j := range grid[i] {
            x, y := i+1, j+1
            dp[x][y] = max(dp[x-1][y], dp[x][y-1]) + grid[i][j]
        } 
    }
    return dp[len(grid)][len(grid[0])]
}

func max(a, b int) int {
    if a > b {
        return a
    }
    return b
}

全部评论

相关推荐

10-23 11:53
门头沟学院 Java
投递华为等公司10个岗位 >
点赞 评论 收藏
分享
10-23 13:31
新疆大学 Java
鼠鼠理解的 redis 的单线程:   是指Redis的网络IO和键值对读写是由一个线程来完成的 诸如持久化,异步操作,集群同步都是多线程 是这样吗,牛油们求指教 ave mujica 镇楼
ssp到手了的小白很想退休:针对响应客户端请求的过程是单线程完成,但Redis本身并不是单线程且在后续版本引入了多线程处理IO请求,特别是写请求
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务