CF2057C.Trip to the Olympiad
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在新的一年中,将会有很多团队奥林匹克竞赛,因此「T-generation」的老师们需要选择三名学生组成一个团队来参加这些比赛。无论是哪三名学生,他们都能在任何团体竞赛中表现出色。然而,赢得比赛仅仅是成功的一部分;首先,他们需要获得参赛资格……
每位学生都有一个用整数表示的独立性等级。「T-generation」中,每个独立性等级从 l 到 r(包含 l 和 r)的数值都有且只有一名学生。对于一个由独立性等级为 a、b 和 c 的学生组成的三人团队,他们的团队独立性值定义为 (a⊕b)+(b⊕c)+(a⊕c),其中 ⊕ 表示按位异或运算。
你的任务是选择一个三人团队,使得他们的团队独立性值最大化。
输入格式
输入包含多个测试用例。第一行包含一个整数 t(1≤t≤104),表示测试用例的数量。接下来的每行描述一个测试用例。
每个测试用例的首行包含两个整数 l 和 r(0≤l,r<230,r−l>1),表示学生独立性等级的最小值和最大值。
输出格式
对于每个测试用例,输出三个不同的整数 a,b,c,满足 l≤a,b,c≤r,且使表达式 (a⊕b)+(b⊕c)+(a⊕c) 的值最大。在存在多个解的情况下,可以输出任意一个满足条件的三元组。
输入输出样例
输入#1
8 0 2 0 8 1 3 6 22 128 137 69 98 115 127 0 1073741823
输出#1
1 2 0 8 7 1 2 1 3 7 16 11 134 132 137 98 85 76 123 121 118 965321865 375544086 12551794
说明/提示
在第一个测试用例中,可以选择的唯一个合适的三元组(忽略顺序)是 (0,1,2)。
在第二个测试用例中,其中一个合适的三元组是 (8,7,1),因为 (8⊕7)+(7⊕1)+(8⊕1)=15+6+9=30。经过证明,30 是在 0≤a,b,c≤8 时,(a⊕b)+(b⊕c)+(a⊕c) 的最大可能值。