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

파이썬에서 n개의 루크가 서로 공격하지 않도록 배열하는 여러 가지 방법을 찾는 프로그램

<시간/>

크기가 n x n인 체스판을 나타내는 숫자 n이 있다고 가정합니다. 서로 공격하지 못하도록 n개의 루크를 배치할 수 있는 방법의 수를 찾아야 합니다. 여기서 두 가지 방법은 한 가지 방법으로 체스판의 일부 셀이 점유되고 다른 방법으로 셀이 점유되지 않는 경우 다른 것으로 간주됩니다. (루크가 같은 행이나 같은 열에 있는 경우 서로 공격할 수 있다는 것을 알고 있습니다.)

따라서 입력이 3과 같으면 출력은 6이 됩니다.

파이썬에서 n개의 루크가 서로 공격하지 않도록 배열하는 여러 가지 방법을 찾는 프로그램

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

f =n의 계승

f를 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시

import math
class Solution:
   def solve(self, n):
      return math.factorial(n)
ob = Solution()
print(ob.solve(3))

입력

3

출력

6