求助大神,为什么会RE

P1198 [JSOI2008] 最大数

线段树写了也会T。。。
by 青衫白叙 @ 2017-11-02 08:57:04


@[青衫白叙](/space/show?uid=48991) 但是为什么会RE啊
by Mashiro_ylb @ 2017-11-02 09:11:38


没看。。。
by 青衫白叙 @ 2017-11-02 09:14:04


> int mid = ((l + r) >> 1); 可能是这里l+r的时候爆int了,试试改成 int mid=l+(r-l)/2;
by Toby_ZT @ 2017-11-02 09:33:23


试试 ```cpp int mid = (l&r) +((l^r)>>1); ``` huaji
by 青衫白叙 @ 2017-11-02 09:41:18


@[Toby\_ZT](/space/show?uid=35973) @ 青衫白叙 试过了,没用,不是mid的问题 但还是表示感谢
by Mashiro_ylb @ 2017-11-02 10:05:32


有点迷。。你为什么要 lazy 标记。。
by 青衫白叙 @ 2017-11-02 10:29:25


@[青衫白叙](/space/show?uid=48991) 也许是蒟蒻不愿意写单点修改吧
by Mashiro_ylb @ 2017-11-02 10:30:34


@[Toby\_ZT](/space/show?uid=35973) @[青衫白叙](/space/show?uid=48991) 已解决,是字符录入的问题,字符录入录入了空格和换行符,写了个字符读入优化就可以了 再次表示衷心的感谢 ```cpp char c_read() { char ch = getchar(); while(ch != 'Q' && ch != 'A') ch = getchar(); return ch; } ```
by Mashiro_ylb @ 2017-11-02 11:06:50


好像。。我真的没认真看。。其实我只是打酱油的。。
by 青衫白叙 @ 2017-11-02 11:18:38


|