码迷,mamicode.com
首页 > 编程语言 > 详细

算法笔记--关于求前缀和前的O(1)询问更新

时间:2017-07-05 15:25:10      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:blank   problems   com   ems   force   for   arc   例题   test   

所有元素初始值为0才能这么做。

①l--r全加1

a[l]++;

a[r]--;

求一遍前缀和为元素本身。

求两遍前缀和为元素前缀和。

例题:http://codeforces.com/problemset/problem/816/B

②l--r从1加到l-r+1

a[l]++;

a[r+1]-=l-r+2;

a[r+2]+=l-r+1;

求两遍前缀和为元素本身。

求三遍前缀和为元素前缀和。

因为更新时复杂度是o(1)所以复杂度为求前缀和时的o(N)。

例题:http://arc077.contest.atcoder.jp/tasks/arc077_c

算法笔记--关于求前缀和前的O(1)询问更新

标签:blank   problems   com   ems   force   for   arc   例题   test   

原文地址:http://www.cnblogs.com/widsom/p/7121047.html

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