B题题目看错导致晕了老半天
D题:从左往右 找到 l 和 r的二进制表示中的第一对 0 1, http://codeforces.com/contest/276/submission/3190755
。。。011111
。。。100000
。。。111111
省略号表示的数位都相同,容易看出不会有其他答案比这个值更大,如果有,则前面还有上面1 与 下面 0配对,那么l肯定大于r了。
E题:一棵结构特殊的树,除了根节点,其他节点最多只有两个度。完成一些树上的成段更新操作,单点查询点权,用两个树状数组就好了
注意有两种更新,一种是从根节点往下,另一种是从V点往下,分别用两个树状数组支持
http://codeforces.com/contest/276/submission/3192701