3259 - 二进制位互换

题目描述

小明在学习计算机组成原理时,遇到了一个有趣且具有挑战性的问题。他思考了很久,但仍然无法找到解决方案。于是他向你求助,希望你能帮助他解决这个问题。

给定一个正整数 x,请你将 x 的二进制表示中第 i 位和第 j 位的值互换,并输出互换后的结果。

注意: x 的二进制表示的最右边为第 0 位。

输入

一行,包含三个整数 x , i , j

输出

一个整数,表示互换后的结果。

样例

输入

1 0 1

输出

2

输入

1 0 31

输出

2147483648
说明

【数据范围】

{1 \le x \le 2^{31}−1}

{0 \le i,j \le 31}

标签
题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 75
通过人数 37
金币数量 0 枚
难度 基础


上一题 下一题