标签:class ret turn pre 范围 位置 highlight 线段 最大的
在[ql,qr]范围内找一个最大的位置pos, 使得[pos,qr]的和$\ge now$.
int now, pos, s[N<<2]; void find(int o, int l, int r, int ql, int qr) { if (pos) return; if (ql<=l&&r<=qr) { if (l==r) { if (s[o]>=now) pos=l; else now -= s[o]; return; } pd(o,l,r); if (s[rc]>=now) return find(rs,ql,qr); now -= s[rc]; return find(ls,ql,qr); } pd(o,l,r); if (mid>=qr) return find(ls,ql,qr); if (mid<ql) return find(rs,ql,qr); find(rs,ql,qr),find(ls,ql,qr); }
标签:class ret turn pre 范围 位置 highlight 线段 最大的
原文地址:https://www.cnblogs.com/uid001/p/10884331.html