Given N and K, output K-th Palindrome that has N digits.

**Input: **N = 2, K = 3**Output: **[3, 3]**Explanation:** [1,1] => [2,2] => [3, 3]

**Input:** N = 3, K = 5**Output:** [1, 4, 1]**Explanation:** [1, 0, 1] => [1, 1, 1] => [1, 2, 1] => [1, 3, 1] => [1, 4, 1]

**Input:** N = 5, K = 201**Output:** [3, 0, 0, 0, 3]**Explanation:** … => [2, 9, 8, 9, 2] => [2, 9, 9, 9, 2] => [3, 0, 0, 0, 3]

def func(n, k, ans): if n > 0: segment = 10 ** ((n - 1) // 2) element, next_k = divmod(k, segment) ans.append(element) func(n - 2, next_k, ans) def generate(n, k): ans = [] func(n, k - 1, ans) ans[0] += 1 if n % 2: return ans[:-1] + ans[::-1] else: return ans + ans[::-1] if __name__ == "__main__": result = generate(5, 201) print(result)