给定2个位置(x1,y1)和(x2,y2)打印O(1)时间内矩形区域内所有元素的总和

问题描述 投票:-2回答:2

给你一个2D矩阵。现在用户将给出2个位置(x1,y1)和(x2,y2),这基本上是矩阵内形成的矩形的左上角和右下角坐标。您必须在O(1)运行时间内打印矩形区域内所有元素的总和。现在,您可以使用矩阵进行任何预先计算。但是当它完成后,你应该在恒定时间内回答所有问题。

示例:考虑此2D矩阵

1 3 5 1 8 
8 3 5 3 7 
6 3 9 6 0 

现在考虑用户(0,2)和(2,4)给出的2个点。您的解决方案应打印:44。即,封闭区域是

5 1 8 
5 3 7 
9 6 0
arrays matrix
2个回答
2
投票

由于您的问题似乎与家庭作业有关,我只是发布了一个线索......这是一个可能激励您的公式:

这个术语总和代表什么?

用数学工具重写你的问题,像ij这样的索引......


1
投票

也许这也有帮助:courtosy of: http://www.techiedelight.com/calculate-sum-elements-sub-matrix-constant-time/

礼貌:qazxsw poi

© www.soinside.com 2019 - 2024. All rights reserved.