CF2074C XOR and Triangle

题目描述

这次,粉色士兵们给了你一个整数 $x$($x \ge 2$)。 请判断是否存在一个正整数 $y$ 满足以下条件: - $y$ 严格小于 $x$ - 存在一个非退化三角形$^{\text{∗}}$,其边长为 $x$、$y$ 和 $x \oplus y$。其中 $\oplus$ 表示[按位异或运算](https://en.wikipedia.org/wiki/Bitwise_operation#XOR) 若存在这样的整数 $y$,请输出任意一个满足条件的值。 $^{\text{∗}}$当边长为 $a$、$b$、$c$ 的三角形满足 $a + b > c$、$a + c > b$ 且 $b + c > a$ 时,该三角形是非退化的。

输入格式

每个测试包含多个测试用例。第一行包含测试用例的数量 $t$($1 \le t \le 2000$)。接下来是每个测试用例的描述。 每个测试用例的单独一行包含一个整数 $x$($2 \le x \le 10^9$)。

输出格式

对于每个测试用例,在单独一行中输出一个整数: - 若存在满足条件的整数 $y$,输出 $y$ 的值($1 \le y < x$) - 否则输出 $-1$ 若存在多个满足条件的整数,可以输出任意一个。

说明/提示

在第一个测试用例中,存在边长为 $3$、$5$ 和 $3 \oplus 5 = 6$ 的非退化三角形。因此 $y=3$ 是有效答案。 在第二个测试用例中,$1$ 是 $y$ 的唯一可能候选值,但无法构成非退化三角形。因此答案为 $-1$。 翻译由 DeepSeek R1 完成