https://leetcode-cn.com/problems/max-submatrix-lcci/
给定一个正整数、负整数和 0 组成的 N × M 矩阵,编写代码找出元素总和最大的子矩阵。

返回一个数组 [r1, c1, r2, c2],其中 r1, c1 分别代表子矩阵左上角的行号和列号,r2, c2 分别代表右下角的行号和列号。若有多个满足条件的子矩阵,返回任意一个均可。

注意:本题相对书上原题稍作改动

示例1

输入:
[[-1,0],[0,-1]
]
输出:[0,1,0,1]
解释:输入中标粗的元素即为输出所表示的矩阵

class Solution:def getMaxMatrix(self, matrix: List[List[int]]) -> List[int]:ans = [0 for _ in range(4)]  # 输出m = len(matrix)   # 行数n = len(matrix[0])  # 列数max_sum = matrix[0][0]for i in range(m):  # 起始行b = [0 for _ in range(n)]   # b[0]存储每列和for j in range(i, m):  # 结束行ssum = 0for k in range(n):b[k] += matrix[j][k]if ssum > 0:   # 加了比不加大,那就加上去ssum += b[k]   else:    # 加了比不加小ssum = b[k]   ans1 = i   # 更新行起点ans2 = k  # 更新列起点if ssum > max_sum:  # 如果当前的和更大max_sum = ssum  # 更新最大和ans[0] = ans1  # 更新行起点ans[1] = ans2  # 更新列起点ans[2] = j  # 更新行终点ans[3] = k  # 更新列终点return ans

华为笔试题1-面试题17.24-最大子矩阵相关推荐

  1. 面试题 17.24. 最大子矩阵

    面试题 17.24. 最大子矩阵 给定一个正整数.负整数和 0 组成的 N × M 矩阵,编写代码找出元素总和最大的子矩阵. 返回一个数组 [r1, c1, r2, c2],其中 r1, c1 分别代 ...

  2. 程序员面试金典 - 面试题 17.24. 最大子矩阵(转成一维最大子序和 DP)

    文章目录 1. 题目 2. 解题 2.1 前缀和(超时) 2.2 动态规划 1. 题目 给定一个正整数和负整数组成的 N × M 矩阵,编写代码找出元素总和最大的子矩阵. 返回一个数组 [r1, c1 ...

  3. 华为笔试题---明明的随机数

    题目 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着 ...

  4. 【leetcode】第394题:字符串解码(华为笔试题)

    题目:给定一个经过编码的字符串,返回它解码后的字符串. 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次.注意 k 保证为正整数. ...

  5. 华为笔试题 -- 多个数组按顺序合并(Java代码实现)

    华为笔试题 – 多个数组按顺序合并(Java代码实现) 题目描述: 现在有多组整数数组,需要将他们合并成一个新的数组.合并规则,从每个数组里按顺序取出固定长度的内容合并到新的数组中,取完的内容会删除掉 ...

  6. 2019届华为笔试题(软件卷)

    华为笔试题共3道编程题.第一题100分,第二题200分,第三题300分,一共600分. 第一题: 输入描述: 1.忽略小数点,例如"A1.2",认为包含整数1和2: 2.如果整数的 ...

  7. ①(语法篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)

    iOS面试题 一共分为笔试题和面试题两部分 笔试题 一共分为10个 总共613题 面试题 一共400题 笔试题 一个10个系列 分别为 ①(语法篇) 共147题 已更新 ②(常识篇) 共72题 已更新 ...

  8. ⑪(面试篇 2/3)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)

    iOS面试题 一共分为笔试题和面试题两部分 笔试题 一共分为10个 总共613题 面试题 一共400题 笔试题 一个10个系列 分别为 ①(语法篇) 共147题 已更新 ②(常识篇) 共72题 已更新 ...

  9. ②(常识篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)

    iOS面试题 一共分为笔试题和面试题两部分 笔试题 一共分为10个 总共613题 面试题 一共400题 笔试题 一个10个系列 分别为 ①(语法篇) 共147题 已更新 ②(常识篇) 共72题 已更新 ...

  10. ⑧(网络篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)

    iOS面试题 一共分为笔试题和面试题两部分 笔试题 一共分为10个 总共613题 面试题 一共400题 笔试题 一个10个系列 分别为 ①(语法篇) 共147题 已更新 ②(常识篇) 共72题 已更新 ...

最新文章

  1. java 获取已有字体,java获取本机全部可用字体
  2. red hat关于桥接模式连不上外网或者没有IP
  3. 云网融合 — 基于 SD-DCI 的云间网络融合
  4. php简单还是go简单_PHP转Golang一些感想
  5. Memcached源码分析
  6. 比特币技术公司创始人:ICO是一场被骗子玩弄的网络泡沫
  7. Linux内核与文件系统分析
  8. qoq是什么意思的缩写_有意思,“TTFN”居然是“再见”的缩写词,具体是指什么呢?...
  9. visio双线方框怎么画_visio透明框怎么画? visio绘制方框透明的教程
  10. hibernate的注解属性mappedBy详解
  11. Unicode 字符集
  12. 在Linux下玩QQ游戏
  13. 如何利用SFTP在远程服务器中保障文件传输安全
  14. [MySQL远程备份策略举例]
  15. BZOJ3161 : 孤舟蓑笠翁
  16. 消息循环中TranslateMessage和Dispatch函数的作用
  17. 生产者消费者模式详细解读
  18. Python Plotly制作网页版表格
  19. ubuntu上的音频分析工具
  20. 跨境电商ERP中的自动化 5.平台订单自动打印面单

热门文章

  1. 基于三维GIS技术的智慧物流园区建设
  2. 一行代码实现网页整体变成黑白色
  3. 深度神经网络的理解和实践例子,很好。
  4. 史上最全面的DateUtils工具类
  5. html5音乐播放器格式midi,HTML5 Audio時代的MIDI音樂文件播放
  6. Axure原型模板、元件库、组件库
  7. 从EJB3中访问资源的5种方式
  8. threejs视频教程学习(1):本地搭建threeJS官网、渲染第一个场景
  9. Axure 9 实战案例,中继器的应用 2,列表的交替色和悬停色
  10. 天行健!君子以自强不息!