Python程序:计算给定字符串字符可以组成的长度为k的回文串数量


假设我们有一个字符串s,它表示字母字符和一个数字k。我们必须找到可以使用s中字母构建的长度为k的回文串的数量。如果需要,我们可以多次使用这些字母。

因此,如果输入类似于s = "xy",k = 4,则输出将为4,因为回文串为[xxxx,yyyy,xyyx,yxxy]。

为了解决这个问题,我们将遵循以下步骤 -

  • n := k/2 的商
  • x := s 中唯一字符的数量
  • 返回 x^(n + k mod 2)

让我们看一下以下实现以更好地理解 -

示例

 在线演示

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

输入

"xy",4

输出

4

更新于: 2020年10月6日

342 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告