D. 区间异或

    传统题 1000ms 256MiB

区间异或

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

给定两个自然数 llrr,请你计算:

l(l+1) l \oplus (l+1) (l+2)r\oplus (l+2) \oplus \cdots \oplus r

其中,符号 \oplus 表示按位异或运算。

由于区间范围可能很大,无法直接逐个枚举,请你设法在更优的时间复杂度内完成计算。

输入格式

第一行输入一个整数 T(1T105)T(1\leq T\leq 10^5),表示查询的组数。

接下来 TT 行,每行输入两个整数 l,r(0lr1018)l, r(0\leq l\leq r\leq 10^{18})

输出格式

对于每组查询,输出一行一个整数,表示从 llrr 的所有整数按位异或的结果。

输入输出样例 #1

输入 #1

3
2 4
0 7
5 5

输出 #1

5
0
5

26春季信奥数学入门组C第十二场

未参加
状态
已结束
规则
IOI
题目
5
开始于
2026-6-5 19:30
结束于
2026-6-6 20:30
持续时间
25 小时
主持人
参赛人数
6