Python实现:输入正整数输出最高与最低比特十进制值
以下是使用Python实现的代码: ```python while True: try: # 读取输入的正整数 A = int(input()) # 计算最高位的比特 highest_bit = 1 while highest_bit <= A: highest_bit <<= 1 highest_bit >>= 1 # 计算最低位的比特 lowest_bit = A & -A # 输出结果 print(highest_bit) print(lowest_bit) except EOFError: # 遇到文件结束符(EOF)时退出循环 break ``` 代码解释: 1. 输入处理:使用`while True`循环不断读取输入,直到遇到文件结束符(EOF)。在每次循环中,使用`input()`函数读取一行输入,并将其转换为整数`A`。 2. 计算最高位的比特: - 初始化`highest_bit`为1。 - 使用`while`循环将`highest_bit`左移一位,直到`highest_bit`大于`A`。 - 将`highest_bit`右移一位,得到最高位的比特。 3. 计算最低位的比特:使用按位与运算符`&`将`A`和`-A`进行按位与运算,得到最低位的比特。 4. 输出结果:分别输出最高位的比特和最低位的比特。 复杂度分析: - 时间复杂度:计算最高位的比特的时间复杂度为$O(log A)$,计算最低位的比特的时间复杂度为$O(1)$。 - 空间复杂度:代码只使用了常数级的额外空间,因此空间复杂度为$O(1)$。 ######[AI问答 | 398点数解答 | 2026-01-23 19:47:50]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)613
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)552
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)560
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)548
- Java调用Python接口中文乱码?设置UTF - 8编码一招解决!(讯飞星火 | 263点数解答 | 2024-06-06 17:07:59)498
- 解决Java调用Python接口中文乱码问题:设置UTF - 8编码全攻略(讯飞星火 | 160点数解答 | 2024-06-06 17:18:39)538
- Java调用Python接口中文乱码问题:字符编码统一解决方案(讯飞星火 | 344点数解答 | 2024-06-06 17:19:55)631
- 解决Java调用Python接口时中文值乱码问题:设置字符编码为UTF-8(讯飞星火 | 264点数解答 | 2024-06-06 17:27:09)500
- C++ 实现工厂编号二进制位设置为 1 的程序(字节豆包 | 307点数解答 | 2026-02-28 20:46:41)52
- 工厂编号位运算:将指定位置置为 0 的 C++ 实现(字节豆包 | 339点数解答 | 2026-02-28 20:48:38)50
- C++位运算置位操作:将二进制指定位置为1的实现方法(DeepSeek | 924点数解答 | 2026-07-23 16:21:57)21
- C++ 位运算实现指定位置零的掩码操作(DeepSeek | 1137点数解答 | 2026-07-23 16:22:57)23