Find Kth Bit in Nth Binary String LeetCode solution in C++
1class Solution {2public:3string Reverse(string s) {4for (int i = 0; i < s.length() / 2; i++) {5swap(s[i], s[s.length() - 1 - i]);6}7return s;8}910string invert(string s) {11for (int i = 0; i < s.length(); i++) {12if (s[i] == '1')13s[i] = '0';14else15s[i] = '1';16}17return s;18}1920string S(int n) {21if (n == 1) {22return "0";23}24return S(n - 1) + "1" + Reverse(invert(S(n - 1)));25}2627char findKthBit(int n, int k) {28if (n == 1) return '0';29string s = S(n - 1) + "1" + Reverse(invert(S(n - 1)));30return s[k - 1];31}32};