Giả sử chúng ta có một số n đại diện cho một bàn cờ có kích thước n x n. Chúng ta phải tìm nhiều cách có thể đặt n rooks sao cho chúng không thể tấn công lẫn nhau. Ở đây, hai cách sẽ được coi là khác nhau nếu theo một trong các cách, một số ô của bàn cờ bị chiếm, và theo cách khác, ô đó không bị chiếm. (Chúng tôi biết rằng các rook có thể tấn công lẫn nhau nếu chúng ở trên cùng một hàng hoặc trên cùng một cột).
Vì vậy, nếu đầu vào là 3, thì đầu ra sẽ là 6
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
f =giai thừa của n
trở lại f
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Ví dụ
import math class Solution: def solve(self, n): return math.factorial(n) ob = Solution() print(ob.solve(3))
Đầu vào
3
Đầu ra
6