AlgoMooc
← 返回题库

K0097. 秘银符文解码

简单通过率 62% · 提交 13 · 通过 8
字符串数学位运算

小慕在调试一个魔法协议时,收到了一串由 `0` 和 `1` 组成的“符文序列” `rune_bits`。 这串符文记录的是一个 `32` 位信息。小慕需要将它解码为十进制整数。 为避免歧义,解码规则如下: 1. `rune_bits` 只包含字符 `0` 和 `1`。 2. 若长度不足 `32`,视为 后再按 `32` 位补码解释。 3. 按 `32` 位有符号补码输出对应的十进制值。 4. 保证结果满足 `-2^31 <= value <= 2^31 - 1`。

提示:带虚线的词点一下有通俗解释。

输入描述

输入一行,一个二进制字符串 `rune_bits`。 满足 `1 <= len(rune_bits) <= 32`。

输出描述

输出一个整数,表示解码后的十进制结果。

示例

示例 1

输入

00101101

输出

45

示例 2

输入

11111111111111111111111111110110

输出

-10

说明:在 `32` 位补码中,最高位是符号位: * 最高位为 `0` 表示非负数 * 最高位为 `1` 表示负数

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。