779. K-th Symbol in Grammar

开始想到用模拟的方法去解题,很容易超时。
换了递归后解决了问题。

class Solution:
    def kthGrammar(self, N, K):
        """
        :type N: int
        :type K: int
        :rtype: int
        """
        if N == 1:
            return 0
        pro = self.kthGrammar(N - 1, (K - 1) // 2 + 1)
        odd = K % 2
        if pro == 0:
            if odd == 1:
                ans = 0
            else:
                ans = 1
        else:
            if odd == 1:
                ans = 1
            else:
                ans = 0
        #print(N, K, ans)
        return ans

你可能感兴趣的:(779. K-th Symbol in Grammar)