线段树
JSASL
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
线段树(区间修改,单点查询)懒惰标记
这是一道模板题。 给定数列 a[1],a[2],…,a[n]你需要依次进行 q 个操作,操作有两类: 1 l r x:给定 l,r,x,对于所有 i∈[l,r],将 a[i] 加上 x(换言之,将 a[l],a[l+1],…,a[r] 分别加上 x); 2 l r:给定 l,r求 ∑ri=la[i]的值(换言之,求 a[l]+a[l+1]+⋯+a[r]的值)。 Input 第一行包含 2 个正整数 n,q表示数列长度和询问个数。保证 1≤n,q≤106。 第二行 n个整数 a[1],a[2],…,a[n]表原创 2020-09-27 17:48:49 · 430 阅读 · 0 评论 -
线段树单点修改区间查询
单点修改区间查询 这是一道模板题。 给定数列 a[1],a[2],…,a[n],你需要依次进行 qq 个操作,操作有两类: 1 i x:给定 i,x,将 a[i] 加上 x; 2 l r:给定 l,r,求 ∑ri=la[i]的值(换言之,求 a[l]+a[l+1]+⋯+a[r] 的值)。 Input 第一行包含 2 个正整数 n,q,表示数列长度和询问个数。保证 1≤n,q≤106。 第二行 n 个整数 a[1],a[2],…,a[n]表示初始数列。保证 |a[i]|≤106。 接下来 q 行,每行一个操作原创 2020-09-27 15:49:55 · 330 阅读 · 0 评论
分享