当前位置: 首页 > news >正文

lintcode 567 · 最大得分 【动态规划 中等 】

题目

https://www.lintcode.com/problem/567

给定一个矩阵matrix,
matrix[i][j]表示你到达第i行第j列可以得到的分数,现在你要用第0行任意一点出发,从每行里找到一个点进行跳跃,每次从(i,j)(i+1,k)跳跃需要消耗∣j−k∣的分数,请问到最后一行以后,你最多可以得到多少分。1len(matrix),len(matrix[0])1000≤matrix[i][j]10 ^5样例
样例 1输入:
[[1, 2],[3, 4]]
输出: 6
说明 2 + 4 = 6.

思路

动态规划,下一行依赖上一行

答案

public class Solution {/*** @param matrix: the matrix* @return: the maximum score you can get*/public int maximumScore(int[][] matrix) {//简单的动态规划,认真读题目,看下面的代码//很容易看懂依赖关系int n = matrix.length,m=matrix[0].length;int[][] dp = new int[n][m];for (int j = 0; j < m ; j++) {dp[0][j] = matrix[0][j];}for (int i = 1; i <n ; i++) {for (int j = 0; j <m ; j++) {for (int k = 0; k <m ; k++) {dp[i][j] = Math.max(dp[i][j],dp[i-1][k]-Math.abs(j-k)+matrix[i][j]);}}}int max =Integer.MIN_VALUE;for (int i = 0; i < m; i++) {max=Math.max(max,dp[n-1][i]);}return max;}
}
http://www.lryc.cn/news/164008.html

相关文章:

  • qml嵌入到QWidget的两种方式介绍
  • Mysql数据库之常用SQL语句及事务学习总结
  • RuoYi若依管理系统最新版 基于SpringBoot的权限管理系统
  • html实现邮件模版布局-flex布局table布局-demo
  • CENTOS7安装redis在/home/pms/software路径下,并且将redis加入到systemctl中
  • 数据库笔记
  • AI是风口还是泡沫?
  • echarts环图配置
  • Redis优化 RDB AOF持久化
  • 三维模型3DTILE格式轻量化压缩主要技术方法浅析
  • c++day2---9.7
  • 地震反演基础知识2(代码演示)
  • C#学习 - 方法的定义、调用、调试
  • 『PyQt5-Qt Designer篇』| 09 Qt Designer中分割线和间隔如何使用?
  • 基于springboot2+mybatis-plus+jsp增删改查
  • [PHP]empty一直返回true
  • [2023.09.11]: Yew的SSR中的Cargo.toml配置
  • HTTPS加密协议详解:HTTPS性能与优化
  • 9月11日,每日信息差
  • RHCSA-VM-Linux基础配置命令
  • Web安全研究(四)
  • 【CS324】Large Language Models(持续更新)
  • 【学习笔记】「2020-2021 集训队作业」Communication Network
  • 文章参考链接
  • SQLI-labs-第七关
  • 腾讯云轻量2核4G5M服务器_CPU内存_流量_带宽_系统盘
  • 从零开始搭建Apache服务器并使用内网穿透技术实现公网访问
  • unordered_map和unordered_set的使用
  • javascript【格式化时间日期】
  • CCC数字钥匙设计【NFC】--什么是AID?