@[sipu6174](/user/239832)
You are too lucky
```cpp
for(int i=1;i<=m;i++){
int op=read();
if(op==1) updrange(read(),read(),read());
if(op==2) printf("%lld\n",qrange(read(),read()));
if(op==3) updson(read(),read());
if(op==4) printf("%lld\n",qson(read()));
}
```
这一段出问题了
by FutureThx @ 2020-12-04 21:48:07
不能边调用函数边读入
比如这样
```
q(read(),read());
```
两个参数读入的时候可能会以你意想不到的顺序读进去
by FutureThx @ 2020-12-04 21:49:29
如果照我的马蜂改,这样就过了
```cpp
for(int i=1;i<=m;i++){
int op=read();
if(op==1) {
int u,v,w;
u = read();
v = read();
w = read();
updrange(u,v,w);
}
if(op==2) {
int u ,v;
u = read();
v = read();
printf("%lld\n",qrange(u,v));
}
if(op==3) {
int u,v;
u = read();
v = read();
updson(u,v);
}
if(op==4) printf("%lld\n",qson(read()));
}
```
by FutureThx @ 2020-12-04 21:50:59
另外吐槽一句树剖代码真的长的离谱
by FutureThx @ 2020-12-04 21:51:28
@[Ymw123](/user/355559) 难道会从右往左读?
这是ub吗?
by sipu6174 @ 2020-12-04 21:56:48
@[sipu6174](/user/239832) 不是,它的读入会很玄学,具体我也不清楚,但是考场绝对绝对不能这样搞
by FutureThx @ 2020-12-04 22:10:33
noip不考树剖(bushi
by lcyxds @ 2021-01-12 00:05:46