CF2108B.SUMdamental Decomposition

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在最近的一次生日中,你最好的朋友 Maurice 给了你一对数字 nn 和 xx,并要求你构造一个长度为 nn 的正数数组 aa,使得 a1⊕a2⊕⋯⊕an=xa_1 \oplus a_2 \oplus \cdots \oplus a_n = x ∗^{\text{∗}}。

这个任务对你来说太简单了,因此你决定给 Maurice 一个回礼:在所有满足条件的数组中,构造一个元素和最小的数组。你立刻想到了一个合适的数组;然而,由于把它写下来太费时间,Maurice 只能得到它的元素和。

∗^{\text{∗}} ⊕\oplus 表示按位异或运算。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 tt(1≤t≤1041 \le t \le 10^4)。接下来是测试用例的描述。

每个测试用例由一行组成,包含两个数字 nn 和 xx(1≤n≤1091 \le n \le 10^9,0≤x≤1090 \le x \le 10^9)——Maurice 给你的数字。

输出格式

对于每个测试用例,输出你给 Maurice 的礼物——满足所有描述性质的数组的元素和。如果不存在这样的数组,输出 −1-1。

输入输出样例

  • 输入#1

    8
    2 1
    3 6
    1 0
    2 0
    5 0
    2 27
    15 43
    12345678 9101112

    输出#1

    5
    8
    -1
    2
    8
    27
    55
    21446778

说明/提示

在第一个测试用例中,一个合适的数组是 [2,3][2, 3]。可以证明无法获得更小的数组元素和。

在第二个测试用例中,一个合适的数组是 [1,3,4][1, 3, 4]。同样可以证明这是最优的和。

翻译由 DeepSeek V3 完成

输入解题思路,AI测评打分。不知道怎么写?

首页