检查在 Python 中设置 K 第位还是未设置
假设我们有一个数字 n 和另一个值 k。我们必须检查 n 中的第 k 位是否已设置(1)。k 的值是从右侧考虑的。
因此,如果输入类似于 n = 23,k = 3,则输出将为 true,因为 23 的二进制形式为 10111,因此第三个最后一位为 1(已设置)。
为此,我们将遵循以下步骤 -
- 将位向右移动 (k - 1) 次后,temp: = n
- 如果 temp 和 1 为 1,则
- 返回 true
- 返回 false
让我们看一下以下实现以获得更好的理解 -
示例代码
def solve(n,k): temp = n >> (k - 1) if temp & 1: return True return False n = 23 k = 3 print(solve(n, k))
输入
23, 3
输出
True
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP