| 题目名称 | 2132. 高低位交换 | 
|---|---|
| 输入输出 | highlow.in/out | 
| 难度等级 | ☆ | 
| 时间限制 | 1000 ms (1 s) | 
| 内存限制 | 128 MiB | 
| 测试数据 | 10 | 
| 题目来源 |  | 
| 开放分组 | 全部用户 | 
| 提交状态 | |
| 分类标签 | |
| 分享题解 | 
| 通过:81, 提交:150, 通过率:54% | ||||
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
|  | 100 | 0.000 s | 0.00 MiB | C++ | 
| 关于 高低位交换 的近10条评论(全部评论) | ||||
|---|---|---|---|---|
|  | ||||
| 
回复 @Cydia : 红红火火恍恍惚惚 | ||||
| 
被unsigned坑了3个数据  
2016-01-14 09:30
4楼
 | ||||
|  兹磁哦 
2016-01-11 20:07
3楼
 | ||||
| 
回复 @hzoier : doubi 
2016-01-11 15:32
2楼
 | ||||
| 
注意数据类型 
2016-01-11 15:25
1楼
 | ||||
给出一个小于2^32的正整数。这个数可以用一个32位的二进制数表示(不足32位用0补足)。我们称这个二进制数的前16位为“高位”,后16位为“低位”。将它的高低位交换,我们可以得到一个新的数。试问这个新的数是多少(用十进制表示)。
例如,数1314520用二进制表示为0000 0000 0001 0100 0000 1110 1101 1000(添加了11个前导0补足为32位),其中前16位为高位,即0000 0000 0001 0100;后16位为低位,即0000 1110 1101 1000。将它的高低位进行交换,我们得到了一个新的二进制数0000 1110 1101 1000 0000 0000 0001 0100。它即是十进制的249036820。
一个小于2^32的正整数。
新的数。
1314520
249036820
注意位运算相关知识
衡水中学16.1.10小测验