要求
给你一个非负整数 num ,返回它的「加密字符串」。
加密的过程是把一个整数用某个未知函数进行转化,你需要从下表推测出该转化函数:
示例 1:
输入:num = 23
输出:"1000"
示例 2:
输入:num = 107
输出:"101100"
提示:
- 0 <= num <= 10^9
核心代码
class Solution:
def encode(self, num: int) -> str:
return bin(num + 1)[3:]
解题思路:观察可得f(n) 等于 n + 1的二进制形式去掉最左边的一位,bin得到的结果是0bxx,去掉前面3位即可。时间复杂度:O(logN) 空间复杂度:O(logN)