hack:
```
3 2 1 10000000
0 0 0
1 2
2 3
3 1 4
4 2
```
答案是8,你输出12
by guosoun @ 2022-04-23 11:59:00
@[2019gzy](/user/238310) 诶诶诶诶诶??难道子树加不需要加根节点嘛????
by FiresonZ @ 2022-04-24 08:25:21
您多半是线段树挂了:
```cpp
n=3;
build3(1,n,1);
update_need(1, n, 4, 1, 3, 1);//在1-3加4
cout<<checksum(1, n, 2, 3, 1);//查询2-3的和
```
在main函数里执行这些,您输出12
by guosoun @ 2022-04-24 12:29:36
已切;
区间查询标记下传时,两个儿子需要乘`(mid-l+1)`和`r-mid`,您写的是`(mid-ll+1)`和`rr-mid`
附区间查询正确标记下传的代码
```cpp
if(flag1[p])
{
tree[p*2]+=flag1[p]*(mid-l+1);
tree[p*2]%=mod;
tree[p*2+1]+=flag1[p]*(r-mid);
tree[p*2+1]%=mod;
flag1[p*2]+=flag1[p];
flag1[p*2+1]+=flag1[p];
flag1[p]=0;
}
```
by guosoun @ 2022-04-24 12:38:45