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)458
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)414
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)405
- C++ 实现工厂编号二进制位设置为 1 的程序(字节豆包 | 307点数解答 | 2026-02-28 20:46:41)16
- 工厂编号位运算:将指定位置置为 0 的 C++ 实现(字节豆包 | 339点数解答 | 2026-02-28 20:48:38)18
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)310
- 揭秘!十进制数到负进制数的转换程序及代码详解(DeepSeek | 490点数解答 | 2026-01-20 17:31:14)33
- C++ 实现:判断 N 个数在二进制、八进制、十进制、十六进制下的可能性(字节豆包 | 812点数解答 | 2026-01-02 19:28:20)48
- Python实现:判断数字在二进制、八进制、十进制、十六进制中的可能性(字节豆包 | 405点数解答 | 2026-01-02 19:43:33)43
- 巧用 Python:判断数字在二进制、八进制、十进制、十六进制中的可能性(字节豆包 | 251点数解答 | 2026-01-02 19:44:35)47
- Java调用Python接口中文乱码?设置UTF - 8编码一招解决!(讯飞星火 | 263点数解答 | 2024-06-06 17:07:59)389