码迷,mamicode.com
首页 > 其他好文 > 详细

浅谈二维前缀和

时间:2020-05-09 01:20:06      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:math   tps   矩阵   坐标   ref   就是   容斥原理   inline   logs   

首先你们要了解一个叫做前缀和的东西。

二维前缀和其实就是将普通前缀和加了一维。

也就是可以求一个矩阵内任意子矩阵元素和。

仿照一维前缀和,转移方程如下:

\[sum_{i,j}=sum_{i-1,j}+sum_{i,j-1}-sum_{i-1,j-1}+a_{i,j} \]

这个转移方程嘛,主要是先通过容斥原理求出前面的和,然后再加上本身的和。

这样我们求一个左上角坐标为 \(x_1,y_1\),右下角坐标为 \(x_2,y_2\) 的坐标中子矩阵和就可以 \(\mathcal O(1)\) 查询了,很容易得知查询 \(sum_{x2,y2}-sum_{x1-1,y2}-sum_{x2,y1-1}+sum_{x1-1,y1-1}\) 即可。

具体原理也是容斥原理qaq。

二维前缀和和前缀和一样用就好啦。

浅谈二维前缀和

标签:math   tps   矩阵   坐标   ref   就是   容斥原理   inline   logs   

原文地址:https://www.cnblogs.com/CDOI-24374/p/12853989.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!