———- 1.什么是前缀?
举个栗子:
1234567这一串数字,那么“4”的前缀是“1”;“ 1, 2”;“1,2,3”,发现一个规律了吗?某个元素k的前缀是指从第一个元素a到元素k前面的元素b,了解了前缀的概念以后,正式进入前缀和的话题。
———- 2.有趣的前缀和
还是这个栗子:
1234567这一串数字,那么"4"这个元素的前缀和 1+2+3=6,抽象成概念:某个元素k的前缀和是指第一个元素a到元素k-1(即元素k前一个元素)值的和,所以这也是我们经常会见到mp[r] = i+1.的原因。
———- 3.我用前缀和干嘛呢?
****此部分只讨论一维的前缀和,当然二维,三维的前缀和。。。。。。省略一万字
前缀和,你必须得有区间的概念。
一个区间分左区间L和右区间R,[L,R]组成了一个区间,当然[L,R)也是个区间。这也是前缀和出题的坑点之一。右区间R到底是闭“]”还是开”)“
一大类解决:判断是否有重叠区间
二大类解决:存在多少个区间[L,R]内元素和sum=k
三大类解决:最长区间[L,R]内元素满足0,1个数相等(当然不一定是0,1,脑洞大的可以选择)
说那么多不如来几道题?
每道题我会专门写一篇文章~