779. 第K个语法符号(Leetcode)
779. 第K个语法符号
题目链接:
https://leetcode-cn.com/problems/k-th-symbol-in-grammar/submissions/
题解:
当层数列的前半部分等于上一层数列的整体,且当层数列前半部分取反等于后半部分
第一层,必然返回1,递归求解即可
AC代码:
class Solution {
public int kthGrammar(int N, int K) {
if(N == 1) return 0;
if(K <= (1 << (N - 2))) return kthGrammar(N-1,K);
return kthGrammar(N, K - (1 << (N - 2)) ) ^ 1;
}
}