#12446. 右移运算器

右移运算器

题目:右移运算器

题目描述

给定两个非负整数 nm,请你计算 n 右移 m 的结果。 右移操作 n >> m 表示将 n 的二进制表示向右移动 m 位,相当于 ​整数除以 2^m 并向下取整​。


输入格式

  • 第一行包含两个整数 nm(0 ≤ n ≤ 10^9,0 ≤ m ≤ 30),表示要进行右移操作的数字和位数。

输出格式

  • 输出一个整数,即 n >> m 的结果。

样例

输入 1

20 2

输出 1

5

解释 20 的二进制是 00010100,右移两位得到 00000101,十进制为 5。


输入 2

48 4

输出 2

3

解释 48 的二进制是 00110000,右移 4 位得到 00000011,十进制为 3。


额外说明

  • 你可以直接使用 C++ 的右移操作符 >>,或者通过整数除法 n / (1 << m) 来计算。
  • 注意整数右移向下取整的特性,例如 7 >> 2 = 1