Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

크기 k의 회문 수를 세는 프로그램은 Python에서 주어진 문자열 문자로 구성할 수 있습니다.

<시간/>

알파벳 문자를 나타내는 문자열 s와 숫자 k가 있다고 가정합니다. s의 문자만 사용하여 길이 k를 구성할 수 있는 회문의 수를 찾아야 합니다. 그리고 원하는 경우 이러한 문자를 두 번 이상 사용할 수 있습니다.

따라서 입력이 s ="xy", k =4와 같으면 회문이 [xxxx, yyyy, xyyx, yxxy]이므로 출력은 4가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • n :=k/2의 몫
  • x :=s의 고유 문자 수
  • x^(n + k 모드 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