首页 > 其他 > 详细

1144. 范围加法之二

时间:2020-04-12 14:35:15      阅读:49      评论:0      收藏:0      [点我收藏+]

1144. 范围加法之二

中文English

给定一个m * n 的全零矩阵M,以及一些更新操作。

操作由2D数组表示,并且每个操作由具有两个正整数a和b的数组表示,对于一个操作[a,b],这意味着M [i] [j] 会在所有0 <= i <a且0 <= j <b 的i,j位置上加1.

在执行完所有操作后,您需要计算并返回矩阵中的最大整数的个数。

样例

样例 1:

输入: 
m = 3, n = 3
operations = [[2,2],[3,3]]
输出: 4
解释: 
最初,M =
[[0,0,0],
 [0,0,0],
 [0,0,0]]

在执行[2,2]之后,M =
[[1,1,0],
 [1,1,0],
 [0,0,0]]

执行[3,3]后,M =
[[2,2,1],
 [2,2,1],
 [1,1,1]]

所以M中的最大整数是2,M中有4个2。所以返回4。

注意事项

m和n的范围是[1,40000]。
a的范围是[1,m],b的范围是[1,n]。
操作个数不超过10,000。

输入测试数据 (每行一个参数)如何理解测试数据?
##范围加法之二
class Solution:
    ‘‘‘
    大致思路:
    1.只需要根据ops来判断多少是共同的部分,给出共同的部分里面的元素个数即可,假设ops 不为[]
    2.两两进行匹配,返回相同的部分[x,y],不停的循环替换
    ‘‘‘
    def maxCount(self,m,n,ops):
        if ops == []:
            return m*n
        l = ops[0]
        for  i in range(1,len(ops)):
            l = [min(l[0],ops[i][0]),min(l[1],ops[i][1])]
        return l[0]*l[1]

 

1144. 范围加法之二

原文:https://www.cnblogs.com/yunxintryyoubest/p/12685106.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!