/ Smart / 题库 /

bitset与位运算

bitset与位运算

【问题描述】

  输入正整数a和x,请用位运算符完成下列任务:
  任务1:输出a*2x的结果。
  任务2:输出a/2x的结果。
  任务3:输出a的二进制表示中第x位的数字。
  任务4:把正整数a的二进制表示中的第x位变成1,然后输出a变换后的十进制整数。
  任务5:把正整数a的二进制表示中的第x位变成0,然后输出a变换后的十进制整数。
  任务6:把正整数a的二进制表示中的第x位取反,然后输出a变换后的十进制整数。

【输入格式】

第1行,包含两个正整数a,x。

【输出格式】

包含6行,每行包含一个整数,对应任务1-任务6的结果。

【输入样例】

【样例1】
 45 2

【样例2】
 45 4

【输出样例】

【样例1】
 180
 11
 1
 45
 41
 41

【样例2】
 720
 2
 0
 61
 45
 61

【数据范围】

0<=a<=4294967295
0<=x<=31
数据保证任何任务中的结果都不会超过2^64。