Skip to main content
  1. Posts/

LeetCode-1545 找出第 N 个二进制字符串中的第 K 位

·1 min·

LeetCode-1545 找出第 N 个二进制字符串中的第 K 位 #

Solution 1 #

分类讨论, 递归即可. 代码如下:

class Solution:
    def findKthBit(self, n: int, k: int) -> str:
        if n == 1:
            return '0'
        if k < 2 ** (n - 1): 
            return self.findKthBit(n - 1, k)
        elif k == 2 ** (n - 1):
            return '1'
        return str(1 - int(self.findKthBit(n - 1, 2 ** n - k)))