AcWing 243. 线段树基础(区间修改及求区间和)
发布时间
阅读量:
阅读量
AcWing 243. 一个简单的整数问题2
线段树的区间更新与区间求和操作实现方案
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
typedef long long ll;
int n, m;
int w[N];
struct Node{
int l, r;
ll sum, add; //总和和懒标记
}tr[N * 4];
void pushup(int u){ //子更新父
tr[u].sum = tr[u << 1].sum + tr[u << 1 | 1].sum;
}
void pushdown(int u){ //父更新子
auto &root = tr[u], &L = tr[u << 1], &R = tr[u << 1 | 1];
if(root.add){
L.add += root.add;
R.add += root.add;
全部评论 (0)
还没有任何评论哟~
