#L0298. 按位运算求值

按位运算求值

题目描述

给定一个整数 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

提示

对于所有测试点,保证 0x20240 \le x \le 2024

提示:对于任意非负整数 x,yx, y,恒有 $(x \operatorname{and} y) + (x \operatorname{or} y) = x + y$。

难度 入门
通过率
尝试 0
已通过 0
ID
1026
类型
传统题
Time Limit
1000ms
Memory Limit
512MiB
上传者