2489. 位移运算(Shift Operations)
1000ms
256MB
简单
位运算
题目描述
位移运算可以快速地对整数进行翻倍或减半操作。请编写一个程序,输入一个正整数 $n$ 和一个位移位数 $k$,完成以下任务:
1. **左移运算 (<<)**:输出 $n$ 左移 $k$ 位后的结果(相当于 $n \times 2^k$)。
2. **右移运算 (>>)**:输出 $n$ 右移 $k$ 位后的结果(相当于 $n \div 2^k$ 的向下取整)。
3. **奇偶判定 (&)**:利用 **按位与 (&)** 运算符判断 $n$ 是奇数还是偶数。如果是奇数输出 `Odd`,如果是偶数输出 `Even`。
输入格式
- 一行包含两个正整数 $n$ 和 $k$。
输出格式
- 输出共三行:
- 第一行:$n \ll k$ 的结果。
- 第二行:$n \gg k$ 的结果。
- 第三行:$n$ 的奇偶性(`Odd` 或 `Even`)。
样例 1
输入 (Input)
输出 (Output)
样例说明
- $n=5 (101)_2, k=2$
- 左移 2 位:$(10100)_2 = 20$。
- 右移 2 位:$(1)_2 = 1$。
- $5 \ \& \ 1 = (101)_2 \ \& \ (001)_2 = 1$,结果为 1 说明最后一位是 1,即奇数。
- $1 \le n \le 10^6$
- $1 \le k \le 10$
› 输入 stdin
CtrlShiftEnter
‹ 输出 stdout
错误 stderr
操作成功