#271. 与或和2025

与或和2025

与或和2025

题目描述

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

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

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

输入格式

一行,一个整数 xx

输出格式

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

样例输入

1025

样例输出

1000

样例解释

根据位运算的性质,对于任意整数 x,yx,y,恒有 $(x \operatorname{and} y) + (x \operatorname{or} y) = x + y$。
因此原等式等价于 x+y=2025x + y = 2025,解出 y=2025xy = 2025 - x
x=1025x = 1025 时,y=1000y = 1000,且 10001000 是正整数,故输出 10001000

数据范围

对于所有测试点,保证 0x<20250 \le x < 2025