Program to count number of palindromes of size k can be formed from the given string characters in Python

Suppose we have a string s that is representing alphabet characters and a number k. We have to find the number of palindromes where we can construct of length k using only letters in s. And we can use these letters more than once if we want.

So, if the input is like s = "xy", k = 4, then the output will be 4 as the palindromes are [xxxx, yyyy, xyyx, yxxy].

To solve this, we will follow these steps −

  • n := quotient of k/2
  • x := number of unique characters in s
  • return x^(n + k mod 2)

Let us see the following implementation to get better understanding −


 Live Demo

class Solution:
   def solve(self, s, k):
      return len(set(s))**(n+k%2)
s = "xy"
k = 4
ob = Solution()
print(ob.solve(s, k))