我用了值域分治+线段树上二分,按理说时间复杂度是 O(nlogn)O(n\log n)O(nlogn) ,常数过这题的数据范围应该也是绰绰有余的,但是在一个点上卡了很久
这是AC记录,而这是TLE记录
当我把树上查询中的“找右子树”情况从
return max(t[p<<1],ask(p<<1|1,mid+1,r,x));
改成
int qwq=ask(p<<1|1,mid+1,r,x); return max(t[p<<1],qwq);
之后,就AC了???