看错题-线段树
题目描述
给定一颗线段树,每次区间加一个x,如果每次在线段树区间加操作做完后,依次选一个叶子节点进入,然后一直走到根节点,问最后得到的期望值是多少。
小Y同学为了让题目更简单,对于n个整数,n是一个2^x2x的整数,来保证这个线段树是一棵满二叉树。
他现在想问你,每次给一段区间加上一个整数(每次操作对后续有影响),然后依次在线段树中选一个叶子节点,一直走到根节点,将一路经过的节点权值累加,问把每一个叶子节点选择一遍后的全部的总和是多少。
Input
第一行整数 n,m, 表示线段树维护的原序列的长度,询问次数。
第二行 n(1≤n≤217) 个数,表示原序列。
接下来 m(1≤m≤100000) 行,每行三个数 l,r,xl,r,x 表示对区间[l,r][l,r] 加上 xx
Output
共 mm 行,表示查询的权值和。
Sample Input
1 |
|
Sample Output
1 |
|
思路
区间修改,区间求和,但是这题不用写查询,因为从所有叶子节点到根节点的链的和为根节点的权值*(2*n-1)
代码
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!