#2828. [GESP三级202503] 2025

[GESP三级202503] 2025

Description

小 A 有一个整数 xx,他想找到最小的正整数 yy 使得下式成立:

$$(x \ \operatorname{and} \ y) + (x \ \operatorname{or} \ y) = 2025 $$

其中 and\operatorname{and} 表示二进制按位与运算,or\operatorname{or} 表示二进制按位或运算。如果不存在满足条件的 yy,则输出 1-1

Input Format

一行,一个整数 xx

Output Format

一行,一个整数,若满足条件的 yy 存在则输出 yy,否则输出 1-1

1025

1000
### 数据范围
对于所有测试点,保证 $0 \leq x < 2025$。

Hint

$$(x \ \operatorname{and} \ y) + (x \ \operatorname{or} \ y) = 2025 $$

其中:

  • and\operatorname{and} 表示按位与运算,运算符为 &\&
  • or\operatorname{or} 表示按位或运算,运算符为 |

Source

2025年3月GESP C++/Python三级