一、目录
1.前缀和典型例题
2.差分典型例题
3.前缀和和差分的应用(树状数组等)
二、正文
1.前缀和典型例题(求一维数组前缀和,二维前缀和)
前缀和主要思想是通过预处理从而降低时间复杂度。
AcWing 796. 子矩阵的和 - AcWing(前缀和预处理)
P3397 地毯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
2.差分典型例题(一维差分,二维差分)
3.前缀和与差分的应用
(1)树状数组
树状数组的本质是动态维护前缀和。树状数组通常支持单点修改区间查询,以及区间修改单点查询等操作。在进行单点修改区间查询时需要用到前缀和即可。而在进行区间修改单点查询时则需要动态维护差分数组的前缀和。
例题:P1908 逆序对 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P5200 [USACO19JAN] Sleepy Cow Sorting G - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P4378 [USACO18OPEN] Out of Sorts S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P3374 【模板】树状数组 1 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P3368 【模板】树状数组 2 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P3655 不成熟的梦想家 (未熟 DREAMER) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
P1972 [SDOI2009] HH的项链 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
(数星星进阶为楼兰图腾)。
(2)静态数组维护问题多项式(多项式前缀和)
例题:day1集训题目t4(牛客)牛客竞赛_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ (nowcoder.com)https://ac.nowcoder.com/acm/contest/86068#question
(3)前缀和以及差分思想的应用
取余前缀和
P3131 [USACO16JAN] Subsequences Summing to Sevens S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
https://www.luogu.com.cn/problem/P3131
增减序列
P4552 [Poetize6] IncDec Sequence - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
https://www.luogu.com.cn/problem/P4552
P1969 [NOIP2013 提高组] 积木大赛 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
https://www.luogu.com.cn/problem/P1969
P5019 [NOIP2018 提高组] 铺设道路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P5019