//线段树中不是懒方法建立,修改(某个数据),查询区间和(sum)与最大值(max) #include<cstdio> #include<iostream> using namespace std; const int MAXN=1000; struct&nb
代码来自网上(非原创) /*题目地址 对于Q操作,求出区间的总和,对于C操作,将区间里的所有数都加上同一个数 考虑结点存放两个信息,一个是该结点区间内的和s,一个是该区间所有数的增量d,对于一个C操作,如果区间刚好等于某结点的区间,则直接将增量加上去,否则,递归到左右子结点,并更新父结点的s值。这样,对于插入与查询都能达到O
#include<iostream> #include<cstdio> using namespace std; //ifstream cin ("c.in"); //ofstream cout ("c.out"
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号