CF2057C Trip to the Olympiad
题目描述
在新的一年中,将会有很多团队奥林匹克竞赛,因此「T-generation」的老师们需要选择三名学生组成一个团队来参加这些比赛。无论是哪三名学生,他们都能在任何团体竞赛中表现出色。然而,赢得比赛仅仅是成功的一部分;首先,他们需要获得参赛资格……
每位学生都有一个用整数表示的独立性等级。「T-generation」中,每个独立性等级从 $l$ 到 $r$(包含 $l$ 和 $r$)的数值都有且只有一名学生。对于一个由独立性等级为 $a$、$b$ 和 $c$ 的学生组成的三人团队,他们的团队独立性值定义为 $(a \oplus b) + (b \oplus c) + (a \oplus c)$,其中 $\oplus$ 表示按位异或运算。
你的任务是选择一个三人团队,使得他们的团队独立性值最大化。
输入格式
输入包含多个测试用例。第一行包含一个整数 $t$($1 \le t \le 10^4$),表示测试用例的数量。接下来的每行描述一个测试用例。
每个测试用例的首行包含两个整数 $l$ 和 $r$($0 \le l, r < 2^{30}$,$r - l > 1$),表示学生独立性等级的最小值和最大值。
输出格式
对于每个测试用例,输出三个不同的整数 $a, b, c$,满足 $l \le a, b, c \le r$,且使表达式 $(a \oplus b) + (b \oplus c) + (a \oplus c)$ 的值最大。在存在多个解的情况下,可以输出任意一个满足条件的三元组。
说明/提示
在第一个测试用例中,可以选择的唯一个合适的三元组(忽略顺序)是 $(0, 1, 2)$。
在第二个测试用例中,其中一个合适的三元组是 $(8, 7, 1)$,因为 $(8 \oplus 7) + (7 \oplus 1) + (8 \oplus 1) = 15 + 6 + 9 = 30$。经过证明,$30$ 是在 $0 \le a, b, c \le 8$ 时,$(a \oplus b) + (b \oplus c) + (a \oplus c)$ 的最大可能值。
**本翻译由 AI 自动生成**