其它测试点 WA。
by Igallta @ 2023-11-16 16:19:07
orz~~你这st貌似没用啊?~~
by f_hxr_ @ 2023-11-16 16:30:16
@[f_hxr_](/user/754467)
明显错了
by Igallta @ 2023-11-16 16:35:22
@[Iam_God](/user/813622) 找出来了在第155行,由于是在线段树上直接修改,要传进去的是u的在线段树上对应的位置也就是u的dfs序。
将`update(1,lx,r);`换成`update(1,l[lx],r);`直接AC
by f_hxr_ @ 2023-11-16 16:58:19
@[Iam_God](/user/813622) 而且你这线段树的
```cpp
inline void querymax(int k,int l,int r){//t[k].l t[k].r 所在区间 l r 查询
if(t[k].l <= r && t[k].r >= l){//在区间里面
//全覆盖
if(l<=t[k].l && r>=t[k].r){
rmax=max(rmax,t[k].maxn);
return;
}
int mid=(t[k].l+t[k].r)>>1;
if(mid >= l){
querymax(LL,l,r);
}
if(mid < r){
querymax(RR,l,r);
}
}
}
```
可直接改成
```cpp
inline void querymax(int k,int l,int r){//t[k].l t[k].r 所在区间 l r 查询
//全覆盖
if(l<=t[k].l && r>=t[k].r){
rmax=max(rmax,t[k].maxn);
return;
}
int mid=(t[k].l+t[k].r)>>1;
if(mid >= l){
querymax(LL,l,r);
}
if(mid < r){
querymax(RR,l,r);
}
}
```
by f_hxr_ @ 2023-11-16 17:01:29
@[Iam_God](/user/813622)
by f_hxr_ @ 2023-11-18 19:50:59
@[f_hxr_](/user/754467)
知道了thx
by Igallta @ 2023-11-18 20:34:32