4679 - 2025

题目描述

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

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

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

输入

一行,一个整数 x

输出

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

样例

输入

1025

输出

1000
说明

【数据范围】

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

【提示】

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

其中:

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

2025年GESP3月认证C++三级真题

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 515
通过人数 368
金币数量 1 枚
难度 入门


上一题 下一题